QRCode 二维码
二维码生成组件,支持 Canvas / SVG / Image 三种渲染方式,可自定义颜色、容错等级、嵌入 Logo 等。
基础用法
通过 value 属性设置二维码内容。
自定义尺寸
通过 size 属性设置二维码尺寸(像素)。
渲染方式
支持 canvas(默认)、svg、image 三种渲染方式。
Canvas
SVG
Image
自定义颜色
通过 color 和 background 属性自定义前景色和背景色。
容错等级
通过 level 属性设置容错等级:L(~7%)、M(~15%,默认)、Q(~25%)、H(~30%)。容错率越高,二维码越复杂但抗损坏能力越强。
L (~7%)
M (~15%)
Q (~25%)
H (~30%)
边距配置
通过 includeMargin 属性控制是否包含静区边距。
无边距
有边距
嵌入图标
通过 image 属性在二维码中心嵌入 Logo,或使用 imageSettings 精细控制。
TIP
嵌入 Logo 时建议使用 level="H" 容错等级,以确保即使 Logo 遮挡部分二维码模块,仍可正常扫描。
状态展示
通过 status 属性设置二维码状态:active(默认)、loading、expired、scanning。
active
loading
expired
scanning
自定义状态插槽
每种状态都提供同名插槽用于自定义内容。
手动刷新
通过 ref 调用 refresh() 方法重新生成二维码。
自动刷新
通过 refreshInterval 属性设置自动刷新间隔(毫秒)。
每 5 秒自动刷新
QRCode API
Props
| 参数 | 说明 | 类型 | 默认值 |
|---|---|---|---|
value | 二维码内容 | string | —(必填) |
size | 二维码尺寸(像素) | number | 160 |
type | 渲染方式 | canvas | svg | image | canvas |
color | 前景色 | string | #000000 |
background | 背景色 | string | #ffffff |
level | 容错等级 | L | M | Q | H | M |
includeMargin | 是否包含静区边距 | boolean | false |
image | 嵌入 Logo 的 URL | string | — |
imageSettings | 嵌入 Logo 的详细配置(覆盖 image) | QRCodeImageSettings | — |
status | 二维码状态 | active | expired | loading | scanning | active |
refreshInterval | 自动刷新间隔(毫秒) | number | — |
QRCodeImageSettings
| 属性 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| src | 图片 URL | string | — |
| width | 图片宽度 | number | — |
| height | 图片高度 | number | — |
Events
| 事件名 | 说明 | 回调参数 |
|---|---|---|
ready | 二维码生成成功时触发 | |
error | 二维码生成失败时触发 | |
refresh | 调用 refresh() 时触发 |
Methods (via ref)
| 方法名 | 说明 | 参数 |
|---|---|---|
refresh() | 手动重新生成二维码 | |
toDataURL() | 获取当前二维码的 Data URL |
Slots
| 插槽名 | 说明 |
|---|---|
loading | 自定义 loading 状态展示 |
expired | 自定义过期状态展示 |
scanning | 自定义扫描状态展示 |