vue中使用AraleQRCode生成二维码

vue中使用AraleQRCode生成二维码

问题背景

本文介绍vue中生成二维码的一种方案,使用AraleQRCode来实现。

问题分析

(1)安装对应的依赖包

复制代码
npm i arale-qrcode --save    

(2)完整代码如下:

复制代码
<template>
  <!-- 二维码 -->
  <div class="code">
    <img :src="img" />
  </div>
</template>


<script>
import AraleQRCode from "arale-qrcode";
export default {
  name: 'app',
  data: () => {
    return {
      img: "",
    }
  },
  components: {},
  mounted() {
    this.makeCode();
  },
  methods: {
    //生成二维码方法
    makeCode() {
      const result = new AraleQRCode({
        render: "svg",      // 定义生成的类型 'svg' or 'table dom'
        text: "baorant so handsome!", // 二维码的链接
        size: 150,      //二维码大小
      });

      // 将svg xml文档转换成字符串
      const svgXml = new XMLSerializer().serializeToString(result);

      // 将svg字符串转成base64格式,通过 window.btoa方法创建一个 base-64 编码的字符串,进行二次编码解码(encodeURIComponent 字符串进行编码和解码,unescape 进行解码)。
      const src =
        "data:image/svg+xml;base64," +
        window.btoa(unescape(encodeURIComponent(svgXml)));

      // 本地存储图片
      localStorage.setItem("image", src);
      this.getImg();
    },

    // 获取存储的图片给到页面
    getImg() {
      this.img = localStorage.getItem("image");
      console.log("$$$$", this.img);
      localStorage.removeItem("image");
    },
  },
};
</script>

<style>
.code {
  display: flex;
  width: 300px;
  height: 300px;
}
</style>

(3)运行结果如下:

扫描该二维码可生成对应的内容。

相关推荐
摘星编程1 小时前
用React Native开发OpenHarmony应用:NFC读取标签数据
javascript·react native·react.js
GISer_Jing1 小时前
AI驱动营销:业务技术栈实战(From AIGC,待总结)
前端·人工智能·aigc·reactjs
GIS之路3 小时前
GDAL 实现影像裁剪
前端·python·arcgis·信息可视化
AGMTI3 小时前
webSock动态注册消息回调函数功能实现
开发语言·前端·javascript
码界奇点3 小时前
基于SpringBoot+Vue的前后端分离外卖点单系统设计与实现
vue.js·spring boot·后端·spring·毕业设计·源代码管理
不会Android的潘潘3 小时前
受限系统环境下的 WebView 能力演进:车载平台 Web 渲染异常的根因分析与优化实践
android·java·前端·aosp
建军啊3 小时前
java web常见lou洞
android·java·前端
阳无3 小时前
宝塔部署的前后端项目从IP访问改成自定义域名访问
java·前端·部署
Galloping-Vijay3 小时前
解决 WSL2 + Windows Hosts + 开启 VPN 后无法访问本地 Web 服务的问题
前端·windows
不吃香菜的猪3 小时前
使用@vue-office/pdf时,pdf展示不全
javascript·vue.js·pdf