微信小程序实现倒计时调用相机自动拍照功能
作者:Alice茄子 时间:2024-04-17 10:26:38
本文实例为大家分享了微信小程序定时拍照的具体代码,供大家参考,具体内容如下
在某些进行签到的场景,为了防止用户选择相册的照片或者不实时拍照,设置相机倒计时自动拍照。
一、首先是视图层index.wxml,视图层主要负责显示组件和图片。
<!--index.wxml-->
<view class="userinfo-login">
<view class="page-body">
<view class="page-body-wrapper">
<view wx:if="{{src}}"></view>
<!-- 如果存在已经拍好的照片就不再显示调用摄像头的组件-->
<view wx:else>
<camera device-position="back" flash="off" binderror="error" style="width: 100%; height: 200px;"></camera>
<!-- 调用摄像头的组件-->
</view>
<image wx:if="{{src}}" mode="widthFix" src="{{src}}"></image>
<!-- 显示拍好的照片-->
</view>
</view>
</view>
二、逻辑层index.js,调用倒计时函数并且调用摄像头拍照并保存图片。
//index.js
const app = getApp()
Page({
data: {
userInfo: {},
counting: false//倒计时
},
onLoad: function () {
this.daojishi();//一进来就拍照倒计时
this.ctx = wx.createCameraContext()//创建摄像头对象
},
//倒计时
daojishi: function () {
var that = this;
if (!that.data.counting) {
//开始倒计时5秒
countDown(that, 5);
}
}
})
//倒计时函数 在page外
function countDown(that, count) {
if (count == 0) {
//等于0时拍照
that.ctx.takePhoto({
quality: 'high',
success: (res) => {
that.setData({
src: res.tempImagePath
})
wx.showToast({
title: '拍照完成',
})
}
})
that.setData({
counting: false
})
return;
}
wx.showLoading({//加载时显示倒计时
title: '拍照倒计时'+count+'秒',
})
setTimeout(function () {
wx.hideLoading()
}, 1000)
that.setData({
counting: true,
})
setTimeout(function () {
count--;
countDown(that, count);
}, 1000);
}
主要实现就是这样。
来源:https://blog.csdn.net/weixin_36708477/article/details/80242663
标签:微信小程序,相机拍照
0
投稿
猜你喜欢
Minio设置文件链接永久有效的完整步骤
2023-06-10 22:26:10
详解Python编程中对Monkey Patch猴子补丁开发方式的运用
2021-04-15 00:17:15
Python爬虫获取豆瓣电影并写入excel
2022-04-24 06:41:12
Python+Matplotlib实现绘制三维折线图
2021-05-21 22:15:50
Python 启动时选择32位 或64位版的操作
2021-04-29 23:50:43
Python列表解析操作实例总结
2022-10-10 09:59:38
python中enumerate函数遍历元素用法分析
2021-08-07 10:07:18
SQL server 管理事务和数据库介绍
2024-01-21 18:54:32
Informatica bulk与normal模式的深入详解
2024-01-16 01:30:28
python里读写excel等数据文件的6种常用方式(小结)
2021-04-09 08:11:52
Python深入学习之装饰器
2021-09-25 15:00:38
Oracle判断表、列、主键是否存在的方法
2023-07-22 19:13:06
在ASP.NET 2.0中操作数据之四十六:使用SqlDataSource控件检索数据
2023-07-04 14:31:37
IE9一个非常牛的“bug”
2010-05-07 12:45:00
正计时JS代码
2008-05-25 14:53:00
在微信小程序里使用watch和computed的方法
2024-04-10 16:16:40
微软Silverlight技术魅力初体验
2008-11-05 11:16:00
Python数据结构与算法中的栈详解
2023-09-28 17:16:14
Python的Twisted框架上手前所必须了解的异步编程思想
2021-05-02 14:21:44
Recipe: 把SQL数据库部署到远程主机环境(第一部分)
2007-09-23 13:07:00