my.scan
说明:mPaaS 10.1.32 及以上版本支持该接口。
调用扫一扫功能。
my.scan 唤起扫一扫前后整个过程会先后执行 app 和 page 的 onHide 和 onShow 生命周期函数。即(唤起)app.onHide > page.onHide >(返回)app.onShow > page.onShow。
入参
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| scanType | String | 否 | 扫码识别类型,默认值为 ['qrCode','barCode']。 |
| hideAlbum | Boolean | 否 | 是否隐藏相册(不允许从相册选择图片,只能从相机扫码),默认值为 false。 |
| success | Function | 否 | 调用成功的回调函数 |
| fail | Function | 否 | 调用失败的回调函数 |
| complete | Function | 否 | 调用结束的回调函数(调用成功、失败都会执行) |
success 返回值
| 名称 | 类型 | 描述 |
|---|---|---|
| code | String | 扫码所得数据 |
| qrCode | String | 扫描二维码时返回二维码数据 |
| barCode | String | 扫描条形码时返回条形码数据 |
错误码
| error | 描述 | 解决方案 |
|---|---|---|
| 10 | 用户取消 | 为用户正常交互流程分支,不需要进行特殊处理。 |
| 11 | 操作失败 | 具体原因需要查看客户端协助排查。 |
代码示例
// API-DEMO page/API/scan-code/scan-code.json{"defaultTitle": "Scan"}
<!-- API-DEMO page/API/scan-code/scan-code.axml--><view class="page"><view class="page-section"><form onSubmit="scanCode"><view><button type="primary" onTap="scan">扫码</button></view></form></view></view>
// API-DEMO page/API/scan-code/scan-code.jsPage({scan() {my.scan({scanType: ['qrCode','barCode'],success: (res) => {my.alert({ title: res.code });},});}})
常见问题
- Q:小程序体验码扫码后,为何页面一直在加载中?
A:建议检查后台配置的域名白名单,首页存在网络请求必须配置白名单。
该文章对您有帮助吗?