拍照
<camera bindtakephoto="takePhoto"></camera>
Page({
takePhoto: function () {
const ctx = wx.createCameraContext();
ctx.takePhoto({
quality: 'high',
success: (res) => {
console.log('拍照成功', res.tempImagePath);
},
fail: (error) => {
console.error('拍照失败', error);
},
});
},
});
录制视频
<camera bindstart="startRecord" bindstop="stopRecord"></camera>
Page({
data: {
isRecording: false,
},
startRecord: function () {
const ctx = wx.createCameraContext();
ctx.startRecord({
success: () => {
this.setData({ isRecording: true });
},
fail: (error) => {
console.error('开始录制失败', error);
},
});
},
stopRecord: function () {
const ctx = wx.createCameraContext();
ctx.stopRecord({
success: (res) => {
console.log('录制成功', res.tempVideoPath);
this.setData({ isRecording: false });
},
fail: (error) => {
console.error('录制失败', error);
},
});
},
});
在这个示例中,camera 组件通过 bindtakephoto 绑定了 takePhoto 函数,用于处理拍照事件。同样,通过 bindstart 和 bindstop 绑定了 startRecord 和 stopRecord 函数,用于处理开始录制和结束录制事件。
需要注意的是,使用 camera 组件时,需要在 app.json 中的 "permission" 字段中声明相应的权限,比如 "camera" 权限。
{
"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于小程序位置接口的效果展示"
},
"scope.address": {
"desc": "你的地址信息将用于小程序位置接口的效果展示"
},
"scope.camera": {
"desc": "你的摄像头将用于小程序摄像头接口的效果展示"
}
}
}
以上是基本的 camera 组件的使用示例。根据实际需求,你可以调整参数以满足不同的拍摄和录制场景。
转载请注明出处:http://www.zyzy.cn/article/detail/820/微信小程序