官方文档:https://uqrcode.cn/doc
uniapp插件市场:https://ext.dcloud.net.cn/plugin?id=1287

<canvas
  class="class-code"
  canvas-id="codeCanvas"
	id="codeCanvas"
/>
import UQRCode from '@/utils/uqrcode/uqrcode.js' //因为我把这个需要的js给下载过来单独一个js
getCode(){
	var qr = new UQRCode();
	qr.data = "https://message.miyamama.cn/#/pages/download/download";
	qr.size = uni.upx2px(314);
	qr.make();
	var canvasContext = uni.createCanvasContext('codeCanvas', this); // 如果是组件,this必须传入
	qr.canvasContext = canvasContext;
	qr.drawCanvas();
	//上面是展示到页面
	this.getNext()
},
getNext(){
	setTimeout(()=>{
		//下面是canvas生成图片
		uni.canvasToTempFilePath({
			canvasId:'codeCanvas',
			success: (res) => {
				// #ifndef H5
				uni.saveImageToPhotosAlbum({
					filePath:res.tempFilePath,
					success:(rel)=>{
						this.codeImg = rel.file
						this.init()
					},
					fail: (err) => {
						this.$api.msg(err.errMsg)
					}
				})
				// #endif
				// #ifdef H5
				this.$api.msg('请去打开APP!')
				//uni.saveImageToPhotosAlbum 在h5中不能使用
				// #endif
			}
		})
	},300)
}

更多推荐