IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> vue项目中生成二维码并且下载该二维码 -> 正文阅读

[JavaScript知识库]vue项目中生成二维码并且下载该二维码

需求:根据某字段生成二维码并且可以下载该二维码

分析:通过qrcodejs2插件生成二维码

qrcodejs2插件的·使用

一、安装

npm install qrcodejs2 --save

二、页面上导入

import QRCode from ‘qrcodejs2’

三、提供容器,并给容器添加ref属性

四、调用实例方法

具体代码如下:

<template>
  <div class="box">
    <div class="title">qrcode二维码插件的使用</div>
    <div class="paycode">
      <!-- 放置二维码的容器,需要给一个ref -->
      <div class="qrcode" ref="qrCodeUrl" id="qrcode"></div>
    </div>
    <el-button @click="productCode">生成二维码</el-button>
    <el-button @click="downloadAppCodeImg">点击下载二维码</el-button>
<el-button @click="closeCode">清空二维码</el-button>
    
  </div>
</template>

<script>
import QRCode from "qrcodejs2";
export default {
  data() {
    return {
      centerDialogVisible: false,
    };
  },
  methods: {
    // 生成二维码
    productCode() {
      console.log(1);
      var qrcode = new QRCode(this.$refs.qrCodeUrl, {
        // 这里选择器也可以直接写 'qrcode' 用的是id选择器   指示不需要带 # 而已
        text: "tc202110075320", //  生成二维码的 内容
        width: 100, //  宽   单位 px
        height: 100, //  高   单位 px
        // render: 'canvas' // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
        // background: '#f0f'
        // foreground: '#ff0'
        correctLevel: QRCode.CorrectLevel.H, // 二维码容错 级别
      });
    },
    // 下载二维码
    downloadAppCodeImg(name) {
      var canvasData = document
        .getElementById("qrcode")
        .getElementsByTagName("img"); //生成二维码之后其实是个img 所以获取完id之后还要获取到这个img 才能下载成功
      var a = document.createElement("a");
      console.log("xiazai", canvasData);
      a.href = canvasData[0].src;
      a.download = "二维码.png";
      a.click();
    },
    // 清空二维码
    closeCode() {
      this.$refs.qrcode.innerHTML = "";
    },
   
  },
};
</script>

<style lang="less" scoped>
.title {
  font-size: 20px;
}
.el-button {
  margin-top: 20px;
}
</style>

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-10-08 11:42:45  更:2021-10-08 11:44:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:33:35-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码