美文网首页
react 使用qrcode.react插件生成二维码并下载

react 使用qrcode.react插件生成二维码并下载

作者: 滴水1238 | 来源:发表于2020-07-08 16:28 被阅读0次

    1. 安装qrcode.react插件

    yarn add qrcode.react
    // or 
    npm install qrcode.react --save
    

    2. 使用qrcode.react插件生成二维码

    • 引入
    import QRCode from 'qrcode.react';
    
    • 使用
    <QRCode
        id="qrCode"
        value="https://www.jianshu.com/u/992656e8a8a6"
        size={200} // 二维码的大小
        fgColor="#000000" // 二维码的颜色
        style={{ margin: 'auto' }}
        imageSettings={{ // 二维码中间的logo图片
            src: 'logoUrl',
            height: 100,
            width: 100,
            excavate: true, // 中间图片所在的位置是否镂空
         }}
     />                
    

    3. 下载二维码

    <a id="down_link" onClick={this.changeCanvasToPic}>
        点击下载
    </a>
    
     changeCanvasToPic = () => {
        const canvasImg = document.getElementById('qrCode'); // 获取canvas类型的二维码
        const img = new Image();
        img.src = canvasImg.toDataURL('image/png'); // 将canvas对象转换为图片的data url
        const downLink = document.getElementById('down_link');
        downLink.href = img.src;
        downLink.download = '二维码'; // 图片name
      };
    

    4. 定时刷新

    项目中开发的是上课的签到二维码,增加了一个三秒刷新的功能,可能是为了避免一张图片签一学期的情况吧,,,,哈哈哈。。。。

    定时刷新功能是使用 setInterval 定时更新 value 值来更新二维码,跳转地址后面拼上一个radomCode, radomCode定时更新,就实现二维码的刷新了,要及时清理定时器。

    5.效果

    相关文章

      网友评论

          本文标题:react 使用qrcode.react插件生成二维码并下载

          本文链接:https://www.haomeiwen.com/subject/pmjccktx.html