import { View, Image, Text } from "@tarojs/components" import backNav from '@/images/backNav.png' import inviteBg from '@/images/inviteBg.png' import share from '@/images/share.png' import wechat from '@/images/wechat.png' import qrcode from '@/images/qrcode.png' import './index.scss' import { backTo, errorNotice, successNotice } from "../../utils/utils" import { userDetail } from "../../utils/api" import { useState } from "react" import jrQrcode from 'jr-qrcode' import { useEffect } from "react" import { Button } from "@nutui/nutui-react-taro" import config from "../../config/config" import Taro from "@tarojs/taro" import html2canvas from 'html2canvas'; const Index = () => { const [user, setUser] = useState({}) const [code, setCode] = useState('') useEffect(() => { userDetail().then(rs => { if (!rs) return setUser(rs) const img = jrQrcode.getQrBase64(window.location.origin + '/#/pages/index/index?code=' + rs.invite_code) setCode(img) }) }, []) const backFn = () => { backTo() } const genImage = () => { const canvas = document.createElement("canvas") let canvasBox = document.getElementById('imageWrapper') const width = canvasBox.offsetWidth const height = canvasBox.offsetHeight canvas.width = width * 3 canvas.height = height * 3 const options = { backgroundColor: '#F67952', canvas: canvas, useCORS: true, y: 66, allowTaint: true, onrendered: (x) => { console.log(x, "CCC") } }; html2canvas(canvasBox, options).then((canvas) => { let dataURL = canvas.toDataURL("image/png"); //下载 downloadImage(dataURL); //显示 }) } const downloadImage = (url) => { let link = document.createElement("a"); link.href = url; link.setAttribute("download", "邀请码.png"); link.click(); } const shareFn = async () => { genImage() } return 邀请好友 邀请好友,福利多多 邀请码:{user.invite_code} 点击分享二维码 分享至微信 好友扫码加入 } export default Index