欢迎加入交流群 🎉🎉🎉
QQ群:695070434
二维码示例
文档对应版本:v4.0.6
Stringundefined是canvas组件id。
String|Numberundefined否二维码内容。start 为true时必填。
Object{}否二维码配置选项。与原生中 基本配置 一致,数据格式与 setOptions 传入参数一致。
Number200否二维码大小。
Stringpx否px, rpx二维码尺寸单位。
Stringpng否导出的文件类型。可选jpg、png。
Booleantrue否是否初始化组件后就开始生成。
Booleanfalse否是否数据发生改变自动重绘。
Booleanfalse否隐藏组件。如果只需要导出二维码作为图片使用,可设置为true,不能在组件或组件父级元素设置v-if="false"、v-show="false"、style="display:none;"等实现隐藏效果,这样会导致导出二维码空白。
Stringundefined否canvas组件类型。微信小程序默认2d。
Booleanfalse否队列绘制。
Booleanfalse否是否队列加载图片,选择true将通过队列缓存所需要加载的图片。优点是加载重复资源可减少资源请求次数,节省网络资源,缺点是会转化为同步请求,资源不重复且多的情况下,等待时间会更久。总之,请求重复资源较多则选择true,请求不重复资源较多则选择false。
Booleanfalse否loading态。
Booleanfalse否H5保存即自动下载(在支持的环境下),默认false为仅弹层提示用户需要长按图片保存,不会自动下载。
StringuQRCode否H5下载名称。
EventHandle生成完成时触发,返回结果{ success: true | false }。
EventHandle点击组件时触发。
EventHandle重绘时触发。
生成二维码。
使用方法:
// qrcode为组件的ref名称
this.$refs.qrcode.make({
success: () => {
console.log('生成成功');
},
fail: err => {
console.log(err)
}
});
重新生成二维码。
使用方法:
// qrcode为组件的ref名称
this.$refs.qrcode.remake({
success: () => {
console.log('生成成功');
},
fail: err => {
console.log(err)
}
});
导出临时文件路径。
为了保证方法调用成功,请在 complete 事件返回success=true后调用。
使用方法:
// qrcode为组件的ref名称
this.$refs.qrcode.toTempFilePath({
success: res => {
console.log(res);
}
});
保存二维码到本地相册。
为了保证方法调用成功,请在 complete 事件返回success=true后调用。
使用方法:
// qrcode为组件的ref名称
this.$refs.qrcode.save({
success: () => {
uni.showToast({
icon: 'success',
title: '保存成功'
});
}
});
获取uQRCode JS实例。
Function 插件回调函数注册扩展插件,组件仅支持注册type为style的drawCanvas扩展。
使用方法:
import UQRCodeStyleRound from '../../uni_modules/Sansnn-uQRCode/js_sdk/uqrcode/uqrcode.style.round.js';
export default {
onReady() {
/* 注册扩展插件 */
this.$refs.qrcode.registerStyle(UQRCodeStyleRound); // qrcode为组件的ref名称
}
}
自定义扩展请参考:register
自定义加载效果。
示例:
<uqrcode ref="qrcode" canvas-id="qrcode" value="uQRCode" size="200">
<template v-slot:loading>
<text style="color: green;">loading...</text>
</template>
</uqrcode>
Object Object 错误信息
String 错误消息自定义错误处理。
示例:
<uqrcode ref="qrcode" canvas-id="qrcode" value="uQRCode" size="200">
<template v-slot:error="{ error }">
<text style="color: red;">{{ error.errMsg }}</text>
</template>
</uqrcode>
Object String 临时文件路径自定义H5保存提示。
示例:
<uqrcode ref="qrcode" canvas-id="qrcode" value="uQRCode" size="200">
<template v-slot:h5save="{ tempFilePath }">
<view style="display: flex;flex-direction: column;align-items: center;width: 700rpx;padding: 30px 0;background-color: #ffffff;">
<text style="font-size: 14px;color: #9a9b9c;">若保存失败,请长按二维码进行保存</text>
<image style="width: 500rpx;height: 500rpx;margin-top: 20px;" :src="tempFilePath"></image>
</view>
</template>
</uqrcode>
← 原生