Camera
系统相机
类型
ComponentType<CameraProps>
CameraProps
| 参数 | 类型 | 默认值 | 必填 | 说明 | 
|---|---|---|---|---|
| mode | "normal" | "scanCode" | "normal" | 否 | 模式,有效值为normal, scanCode | 
| resolution | "low" | "medium" | "high" | "medium" | 否 | 分辨率,不支持动态修改 | 
| devicePosition | "front" | "back" | "back" | 否 | 摄像头朝向 | 
| flash | "auto" | "on" | "off" | "torch" | "auto" | 否 | 闪光灯 | 
| frameSize | "medium" | "small" | "large" | "medium" | 否 | 指定期望的相机帧数据尺寸 | 
| scanArea | number[] | 否 | 扫码识别区域,格式为[x, y, w, h], x,y是相对于camera显示区域的左上角, w,h为区域宽度,单位px,仅在 mode="scanCode" 时生效 | |
| onStop | BaseEventOrigFunction<any> | 否 | 摄像头在非正常终止时触发, 如退出后台等情况 | |
| onError | BaseEventOrigFunction<any> | 否 | 用户不允许使用摄像头时触发 | |
| onInitDone | BaseEventOrigFunction<onInitDoneEventDetail> | 否 | 相机初始化完成时触发 | |
| onScanCode | BaseEventOrigFunction<any> | 否 | 在成功识别到一维码时触发, 仅在 mode="scanCode" 时生效 | 
API 支持度
| API | 微信小程序 | H5 | React Native | 
|---|---|---|---|
| CameraProps.mode | ✔️ | ||
| CameraProps.resolution | ✔️ | ||
| CameraProps.devicePosition | ✔️ | ||
| CameraProps.flash | ✔️ | ||
| CameraProps.frameSize | ✔️ | ||
| CameraProps.scanArea | ✔️ | ||
| CameraProps.onStop | ✔️ | ||
| CameraProps.onError | ✔️ | ||
| CameraProps.onInitDone | ✔️ | ||
| CameraProps.onScanCode | ✔️ | 
mode
mode 的合法值
| 参数 | 说明 | 
|---|---|
| normal | 相机模式 | 
| scanCode | 扫码模式 | 
resolution
resolution 的合法值
| 参数 | 说明 | 
|---|---|
| low | 低 | 
| medium | 中 | 
| high | 高 | 
devicePosition
device-position 的合法值
| 参数 | 说明 | 
|---|---|
| front | 前置 | 
| back | 后置 | 
flash
flash 的合法值
| 参数 | 说明 | 
|---|---|
| auto | 自动 | 
| on | 打开 | 
| off | 关闭 | 
| torch | 常亮 | 
frameSize
frame-size 的合法值
| 参数 | 说明 | 
|---|---|
| small | 小尺寸帧数据 | 
| medium | 中尺寸帧数据 | 
| large | 大尺寸帧数据 | 
onInitDoneEventDetail
| 参数 | 类型 | 说明 | 
|---|---|---|
| maxZoom | number | 最大变焦 | 
API 支持度
| API | 微信小程序 | H5 | React Native | 
|---|---|---|---|
| Camera | ✔️ |