微信小程序实现倒计时调用相机自动拍照功能
作者: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
投稿
猜你喜欢
- 谢谢icedblog提供的代码, 从那个js中我参考了moveSelect的利用, 不过那个代码中有几个BUG, 比如按住鼠标不放会不见显示
- golang用于创建和发送电子邮件的库douceur - HTML 邮件中的内联 CSSemail - 一个健壮的、灵活的 email 库G
- 使用Ajax技术网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载刷新整个页面,这使得程序能够更快地回应用户的操作,如下笔记将简单介
- 触发器的概念:“在数据库中为响应一个特殊表格中的某些事件而自动执行的程序代码。”(Wikipedia)说得简单一些,它是在一个特殊的数据库事
- create table test3(id int primary key not null identity(1,1),uname var
- 工作中每天需要收集部门内的FR文件,发送给外部部门的同事帮忙上传,这么发了有大半年,昨天亮光一闪,为什么不做成自动化呢,于是用python实
- 一、题目描述本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。小明刚刚找到工作,老板人很好,只是老板夫人很爱购物。老板
- SQLite3数据库的介绍和使用(面向业务编程-数据库)SQLite3介绍SQLite是一种用C语言实现的的SQL数据库它的特点有:轻量级、
- 本文实例讲述了python获取当前计算机cpu数量的方法。分享给大家供大家参考。具体分析如下:这里实际上返回的是计算机的cpu核心数,比如c
- 因为外贸网站,禁止同行抄袭,所以防止中国ip访问访问,访问的时候有密码提示,这样的代码如何写.请给一个提示.或者有好的代码,请分享下。 &n
- 工作中常常会创建一个函数来解决一些需求问题,以下是个人在工作中总结出来的创建函数20种方式,你知道多少?function sayHello(
- Matlab绘图介绍强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一
- python map函数map()函数map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依
- 最近邻法和k-近邻法下面图片中只有三种豆,有三个豆是未知的种类,如何判定他们的种类?提供一种思路,即:未知的豆离哪种豆最近就认为未知豆和该豆
- 目录总体解决方案输出报表自动化Py脚本打包 EXE 桌面小程序好几个月没有写笔记了, 并非没有积累, 而是有点懒了. 想想还是要续上, 作为
- MySQL中的事件调度器,EVENT,也叫定时任务,类似于Unix crontab或Windows任务调度程序。EVENT由其名称和所在的s
- 一、什么是数组数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组的每个实体都包含两项:键和值。二、声明数据在PHP中声
- 关于二分法的定义我就不说了,CSDN很多大牛和前辈都已经阐述的很清楚了,直接上代码。首先,先创建一个名称为 binary_search 的函
- 前言本来准备讲解nginx和apache的日志的,但是个人不太推荐apache(纯属个人爱好),这里就不介绍apache的日志了。作为一名程
- 本文介绍了随机提取N条记录的例子,通过Sql server与access数据库的代码比较让你更快的掌握。随机提取10条记录的例子:Sql s