@tarojs/components
Version:
129 lines (128 loc) • 3.22 kB
TypeScript
import { ComponentType } from 'react'
import { StandardProps, CommonEventFunction } from './common'
interface CameraProps extends StandardProps {
/** 模式,有效值为normal, scanCode
* @default "normal"
* @supported weapp, alipay, tt, qq, jd, rn
*/
mode?: keyof CameraProps.Mode
/** 分辨率,不支持动态修改
* @default "medium"
* @supported weapp, tt
*/
resolution?: keyof CameraProps.Resolution
/** 摄像头朝向
* @default "back"
* @supported weapp, alipay, swan, tt, qq, jd, rn
*/
devicePosition?: keyof CameraProps.DevicePosition
/** 闪光灯
* @default "auto"
* @supported weapp, alipay, swan, tt, qq, jd, rn
*/
flash?: keyof CameraProps.Flash
/** 指定期望的相机帧数据尺寸
* @default "medium"
* @supported weapp, alipay, tt
*/
frameSize?: keyof CameraProps.FrameSize
/** 相机拍照,录制的分辨率。
* @supported alipay
* @default "720P"
*/
outputDimension?: '360P' | '540P' | '720P' | '1080P' | 'max'
/** 摄像头在非正常终止时触发,
* 如退出后台等情况
* @supported weapp, alipay, swan, tt, qq, jd, rn
*/
onStop?: CommonEventFunction
/** 用户不允许使用摄像头时触发
* @supported weapp, alipay, swan, tt, qq, jd, rn
*/
onError?: CommonEventFunction
/** 相机初始化完成时触发
* @supported weapp, tt, rn
*/
onInitDone?: CommonEventFunction<CameraProps.onInitDoneEventDetail>
/** 相机初始化成功时触发。
* @supported alipay
*/
onReady?: CommonEventFunction<CameraProps.onInitDoneEventDetail>
/** 在成功识别到一维码时触发,
* 仅在 mode="scanCode" 时生效
* @supported weapp, alipay, tt, qq, rn
*/
onScanCode?: CommonEventFunction<CameraProps.onScanCodeEventDetail>
}
declare namespace CameraProps {
/** mode 的合法值 */
interface Mode {
/** 相机模式 */
normal
/** 扫码模式 */
scanCode
}
/** resolution 的合法值 */
interface Resolution {
/** 低 */
low
/** 中 */
medium
/** 高 */
high
}
/** device-position 的合法值 */
interface DevicePosition {
/** 前置 */
front
/** 后置 */
back
}
/** flash 的合法值 */
interface Flash {
/** 自动 */
auto
/** 打开 */
on
/** 关闭 */
off
/** 常亮 */
torch
}
/** frame-size 的合法值 */
interface FrameSize {
/** 小尺寸帧数据 */
small
/** 中尺寸帧数据 */
medium
/** 大尺寸帧数据 */
large
}
interface onInitDoneEventDetail {
/** 最大变焦 */
maxZoom: number
}
interface onScanCodeEventDetail {
/** 字符集 */
charSet: string
/** 原始数据
* @supported weapp
*/
rawData: string
/** 码类型 */
type: string
/** 识别结果 */
result: string
/** 识别结果(完整)
* @supported alipay
*/
fullResult: string
}
}
/** 系统相机
* @classification media
* @supported weapp, alipay, swan, tt, qq, jd, rn
* @see https://developers.weixin.qq.com/miniprogram/dev/component/camera.html
*/
declare const Camera: ComponentType<CameraProps>
export { Camera, CameraProps }