Skip to content

x-mlkit-scannig-u 扫码容器

页面内嵌扫码。实时出码、区域过滤、码点点击。全屏单例请用 x-mlkit-scannig-s

微信走官方 camera 扫码,无码坐标,边框、码点点击、scanImage 不可用。

兼容性

HarmonyIOSAndroidWEB小程序
支持支持支持支持支持(官方扫码)

调用

vue
<x-mlkit-scannig-u
  ref="scannerRef"
  camera-position="back"
  :continuous="false"
  :scan-area="scanArea"
  :auto-open="false"
  :show-scan-area="true"
  :show-code-points="true"
  @ready="onReady"
  @scan="onScan"
  @clickCode="onCodeClick"
></x-mlkit-scannig-u>
ts
const scanArea = { x: 0.1, y: 0.2, width: 0.8, height: 0.6 }

function onScan(result : XScanningResult) : void {
  console.log(result.codes)
}

scannerRef.value?.open()
scannerRef.value?.close()

参数

字段说明默认
cameraPositionfront / backback
torch闪光灯false
zoom倍率1
continuousfalse 识别一批后暂停false
vibrate识别成功震动true
scanInterval最小识别间隔 ms300
formats码制["all"]
scanArea归一化扫描区全预览
autoOpen初始化后自动开相机true
showScanArea显示扫描框true
showCodePoints显示码标记true

scanArea 相对组件预览,范围 0~1。只有码中心落在区域内才回调。

事件

名称参数说明
ready{ state, cameraPosition, torchSupported, minZoom, maxZoom }相机就绪
scanXScanningResultsourcecodestextsviewWidth / viewHeightscanArea识别到一批码
clickCode{ rawValue, displayValue, format, bounds, cornerPoints }点击页面上的码标记
stop{ state, reason }暂停、关闭或销毁。reasonresult / close / destroy / error
error{ errSubject, errCode, errMsg }打开或识别失败

方法

名称需要说明
open可选 success / fail / complete打开或继续扫描
close可选 success / fail / complete暂停扫描
setTorchenabled: boolean开关闪光灯
setZoomzoom: number设置倍率,超出设备范围会被夹住
scanImagetempFilePath: string识别本地图片。微信不可用
chooseImage可选 success / fail / complete调相册选图并识别。微信不可用
getState返回当前状态

兼容别名:openCamera = opencloseCamera = closesetFlashModel(enabled) = setTorch

平台差异

  1. 微信无码坐标,扫描框和码点点击无效。
  2. continuous=false 时识别一批后暂停,再 open 继续。

版本

版权归https://xui.tmui.design你不得修改及二次开发,仅供TMUI4会员商用使用。不得转给非VIP会员使用,一经查实数倍赔偿,并追究法律责任。

更新日志

2.0.0(2026-07-31)

  • 破坏性更新,统一为Dcloud函数式风格调用
  • 所有端得到增强
  • web也支持多码识别

1.1.2(2025-08-17)

  • 针对旧 Web/微信实现调整浏览器内核属性。

1.1.0(2024-12-18)

  • 增加闪光灯初始状态和 setFlashModel

1.0.8(2024-08-31)

  • 增加相册图片识别。

1.0.7(2024-08-11)

  • 优化 Android/iOS 识别速率和嵌入尺寸适配。

1.0.0(2024-01-24)

  • 首次发布。
最近更新