全部产品
Search
文档中心

移动开发平台mPaaS:扫码

更新时间:Apr 11, 2022

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.js
Page({
  scan() {
    my.scan({
      scanType: ['qrCode','barCode'],
      success: (res) => {
        my.alert({ title: res.code });
      },
    });
  }
})

常见问题

Q:小程序体验码扫码后,为何页面一直在加载中?

A:建议检查后台配置的域名白名单,首页存在网络请求必须配置白名单。