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)运行结果如下:

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

相关推荐
undefined&&懒洋洋5 分钟前
Web和UE5像素流送、通信教程
前端·ue5
大前端爱好者2 小时前
React 19 新特性详解
前端
随云6322 小时前
WebGL编程指南之着色器语言GLSL ES(入门GLSL ES这篇就够了)
前端·webgl
随云6322 小时前
WebGL编程指南之进入三维世界
前端·webgl
寻找09之夏3 小时前
【Vue3实战】:用导航守卫拦截未保存的编辑,提升用户体验
前端·vue.js
非著名架构师3 小时前
js混淆的方式方法
开发语言·javascript·ecmascript
多多米10054 小时前
初学Vue(2)
前端·javascript·vue.js
敏编程4 小时前
网页前端开发之Javascript入门篇(5/9):函数
开发语言·javascript
柏箱4 小时前
PHP基本语法总结
开发语言·前端·html·php
新缸中之脑4 小时前
Llama 3.2 安卓手机安装教程
前端·人工智能·算法