更新记录
1.0.1(2026-06-23)
下载此版本
- 各端统一导出 base64 图片展示,canvas 离屏绘制
- 新增
auto 参数,auto为false时手动调用 draw() 生成
draw() / toTempFilePath() 生成成功后返回 base64 字符串
- 修复中文内容扫码乱码(UTF-8 编码)
1.0.0(2026-06-08)
下载此版本
初始版本
平台兼容性
uni-app(5.0)
| Vue2 |
Vue2插件版本 |
Vue3 |
Vue3插件版本 |
Chrome |
Chrome插件版本 |
Safari |
Safari插件版本 |
app-vue |
app-nvue |
Android |
Android插件版本 |
iOS |
鸿蒙 |
| √ |
1.0.0 |
√ |
1.0.0 |
√ |
1.0.0 |
√ |
1.0.0 |
- |
- |
√ |
1.0.0 |
- |
- |
| 微信小程序 |
微信小程序插件版本 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
小红书小程序 |
快应用-华为 |
快应用-联盟 |
| √ |
1.0.0 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
zv-qrcode
二维码生成组件,兼容 Vue2 / Vue3、App、H5、微信小程序。
各端统一使用 base64 图片展示,canvas 仅作离屏绘制。
基础用法
<zv-qrcode content="https://zackboys.cn" />
手动生成
<zv-qrcode ref="qr" :auto="false" content="你好世界" />
<button @click="generate">生成二维码</button>
<script>
export default {
methods: {
async generate() {
const base64 = await this.$refs.qr.draw()
console.log(base64) // data:image/png;base64,...
}
}
}
</script>
自定义样式
<zv-qrcode
content="https://zackboys.cn"
:size="400"
foreground="#000000"
background="#ffffff"
error-level="H"
:margin="20"
icon="/static/logo.png"
:icon-size="20"
icon-size-unit="percent"
format="png"
@complete="onComplete"
/>
属性
| 属性 |
说明 |
默认值 |
| content / text |
二维码内容 |
'' |
| size |
尺寸,数字默认 rpx |
300 |
| unit |
尺寸单位 px / rpx |
rpx |
| foreground |
前景色 |
#000000 |
| background |
背景色 |
#ffffff |
| errorLevel |
容错 L/M/Q/H |
H |
| margin |
四周留白 |
20 |
| icon |
中间 logo 地址 |
'' |
| iconSize |
logo 尺寸 |
20 |
| iconSizeUnit |
logo 单位 percent / rpx / px |
percent |
| iconBgColor |
logo 底衬色 |
#ffffff |
| iconPadding |
logo 底衬内边距 |
8 |
| iconRadius |
logo 圆角 |
8 |
| format |
导出格式 png / jpg |
png |
| canvasId |
canvas 唯一 id |
自动生成 |
| auto |
是否自动生成;false 时需手动调用 draw |
true |
| onComplete |
生成完成回调,参数 { imageSrc, tempPath } |
- |
方法
draw() / refresh():生成二维码,返回 Promise\<base64 字符串>
toTempFilePath():同 draw(),返回 base64 字符串
事件
complete:绘制完成,参数 { imageSrc: base64, tempPath: base64 }
success:生成成功,参数为 base64 字符串
error:生成或导出失败
实际效果请查看小程序或app
| 小程序示例 |
app示例 |
 |
 |