vue生成自定义样式二维码

使用vue-qr生成自定义二维码

vue-qr具有自定义二维码背景、logo、实点颜色等特性,能够生成更炫酷的二维码。


vue-qr


效果图

例:支付生成二维码

在这里插入图片描述

安装

npm install vue-qr -S

使用

  • 根据需求自定义参数配置
<div class="tc"  v-if="isShowPayType == 1">
      <p class="pdt10 pdb10">
        支付<span class="ft24 fce3 bold">¥{{omsOrderInfo.payAmount}}</span>元
      </p>
      <p>
        请在 <span class="ft20 fce3">{{countDownMinute}}:{{countDownSecond}}</span> 内支付
      </p>
	<div class="qr_code_box" v-loading="loading">
      
      	<!-- 二维码 -->
        <vue-qr :correctLevel="3"
                :autoColor="false"
                colorDark="#313a90"
                :logoSrc="logoSrc"
                :text="codeUrl"
                :size="255"
                :margin="10"
                :logoMargin="3">
        </vue-qr>
      
        <div class="qr_mask" @click="refreshCodeTap" v-if="parseInt(countDownSecond) == 0">
          <i class="refresh el-icon-refresh"></i>
          <p>请点击刷新重新获取二维码</p>
        </div>
    </div>
  	<p>微信扫码支付</p>
</div>

<script>
    import vueQr from 'vue-qr'

    export default {
      	data() {
            return {
                isShowPayPopup: false,
                bgSrc: '',
                logoSrc: require('@/assets/images/logo.png'),
                codeUrl: 'weixin://wxpay/bizpayurl?pr=TEoxYn0zz',
            }
        },
       	components: {
            vueQr
        },
    }
</script>

部分参数说明

具体参数请查看

参数说明
text二维码内容
size尺寸, 长宽一致, 包含外边距
margin二维码图像的外边距, 默认 20px
colorDark实点的颜色
colorLight空白区的颜色
autoColor若为 true, 背景图的主要颜色将作为实点的颜色, 即 colorDark,默认 true
bgSrc欲嵌入的背景图地址
backgroundColor背景色
logoSrc嵌入至二维码中心的 LOGO 地址
logoScale用于计算 LOGO 大小的值, 过大将导致解码失败, LOGO 尺寸计算公式 logoScale(size-2margin), 默认 0.2
logoMargin标识周围的空白边框, 默认为0
logoBackgroundColor背景色,需要设置 logo margin
logoCornerRadius标识及其边框的圆角半径, 默认为0
gifBgSrc欲嵌入的背景图 gif 地址, 设置后普通的背景图将失效。设置此选项会影响性能
backgroundDimming叠加在背景图上的颜色, 在解码有难度的时有一定帮助
dotScale数据区域点缩小比例,默认为0.35
whiteMargin若设为 true, 背景图外将绘制白色边框(默认是true)
bindElement指定是否需要自动将生成的二维码绑定到HTML上(默认是true)
### 实现 Vue2 项目中生成二维码功能 要在 Vue2 项目中实现生成二维码功能,可以按照以下方法操作: #### 安装 QRCode 插件 首先,在命令行工具中运行以下命令来安装 `qrcode` 或者 `vue-qr` 插件。这里推荐使用 `vue-qr` 插件,因为它专门为 Vue 提供了更便捷的支持。 ```bash npm install vue-qr --save ``` 此命令会将 `vue-qr` 插件安装到您的 Vue2 项目中[^2]。 #### 页面中引入插件并注册组件 在需要使用的 `.vue` 文件中引入 `vue-qr` 并将其作为组件注册。以下是具体的代码示例: ```javascript <template> <div> <!-- 使用 VueQr 组件 --> <VueQr :text="qrText" :size="200"></VueQr> </div> </template> <script> // 引入 vue-qr 插件 import VueQr from "vue-qr"; export default { data() { return { qrText: "https://www.example.com", // 要生成二维码链接 }; }, components: { VueQr, // 注册组件 }, }; </script> ``` 上述代码展示了如何通过 `vue-qr` 插件快速生成一个二维码图片,并设置其大小为 200px × 200px。 #### 配置全局组件(可选) 如果希望在整个应用范围内都可以使用该组件而无需每次都单独导入,则可以在项目的入口文件(通常是 `main.js`)中进行如下配置: ```javascript import Vue from 'vue'; import VueQr from 'vue-qr'; Vue.component('VueQr', VueQr); // 将组件注册为全局可用 ``` 这样就可以直接在任何地方调用 `<VueQr>` 标签而不必重复声明它。 --- ### 注意事项 1. **依赖版本匹配**:确保所使用的 `vue-qr` 版本兼容当前的 Vue2 环境。 2. **自定义参数支持**:除了基本的文字内容外,还可以传递更多选项给 `VueQr` 来调整样式或行为,比如颜色、边距等属性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值