官方介绍:https://www.npmjs.com/package/vue-qr
npm install vue-qr --save
下面给出一个简单的demo
注:上方代码中的 logoSrc 对应的图片url地址 我加上了 ?cache 是为了解决资源请求的跨域问题。具体情况展现可自行研究。
text | 二维码内容 |
---|---|
size | 二维码宽高大小,因为是正方形,所以设一个参数即可 |
margin | 默认边距20px,不喜欢的话自己设为0 |
colorDark | 实点的颜色,注意要和colorLight一起设置才有效 |
colorLight | 空白的颜色,注意要和colorDark一起设置才有效 |
bgSrc | 嵌入背景图地址,没什么卵用,不建议设置 |
logoSrc | 二维码中间的图,这个是好东西,设置一下显得专业点 |
logoScale | 中间图的尺寸,不要设太大,太大会导致扫码失败的 |
dotScale | 那些小点点的大小,这个也没什么好纠结的,不建议设置了 |
注册vue-qr组件 然后绑定url,以及text icon即可,需要刷新验证码可以定义一个方法在刷新url的时候加入随机小数即可
<vue-qr :text=”downloadData.url” :margin=”15″ colorDark=”#000000″ colorLight=”#fff” :logoScale=”0.3″ :size=”200″></vue-qr>
data{
return{
downloadData: {
url: ‘http://192.168.43.115:8080/’,
icon: ‘../../assets/logo.png’
},
keys:null,
img:require(“../../assets/anli.png”)
};
}
}
methods: {
gai(){
this.reload();
var timestamp=new Date().getTime();
this.keys=timestamp
this.downloadData.url=”http://192.168.43.115:8080/?time=”+Math.random() // 这里加入了随机小数,就能够正常的刷新了
console.log(timestamp,Math.random());
this.$nextTick(()=>{
// this.$refs.k.text=timestamp
})
}
},
之前的话我是用的时间戳,发现并不能刷新二维码,后用Mate.random()解决
文章引用https://blog.csdn.net/fifteen718/article/details/85850511