其实这个API也挺奇葩的,录音结束后success不走,complete不走,fail也不走, 不知道是不是因为电脑测试的原因,只能等公测或者等他们完善。以后再测和补充吧!!!!
主要属性:
wx.startRecord(object)
手动调用wx.stopRecord()停止录音
wxml
<!--用于记录时间-->
<text>{{formatRecordTime}}</text>
<button type="primary" bindtap="listenerButtonStartRecord">开始录音</button>
<button type="primary" bindtap="listenerButtonStopRecord">结束录音</button>
js
var util = require('../../../utils/util.js')
var interval
Page({
data:{
//录音显示类型
formatRecordTime: '00:00:00',
//计数
recordTime: 0,
},
onLoad:function(options){
// 页面初始化 options为页面跳转所带来的参数
},
/**
* 监听按钮点击开始录音
*/
listenerButtonStartRecord: function() {
that = this;
interval = setInterval(function() {
that.data.recordTime += 1
that.setData({
//格式化时间显示
formatRecordTime: util.formatTime(that.data.recordTime)
})
}, 1000)
wx.startRecord({
success: function(res) {
console.log(res)
that.setData({
//完成之后重新绘制
formatRecordTime: util.formatTime(that.data.recordTime)
})
},
/**
* 完成清除定时器
*/
complete: function() {
clearInterval(interval)
}
})
},
/**
* 监听手动结束录音
*/
listenerButtonStopRecord: function() {
wx.stopRecord();
clearInterval(interval);
this.setData({
formatRecordTime: '00:00:00',
recordTime: 0
})
},
onReady:function(){
// 页面渲染完成
},
onShow:function(){
// 页面显示
},
onHide:function(){
// 页面隐藏
},
/**
* 当界面关闭时停止定时器关闭录音
*/
onUnload:function(){
// 页面关闭
wx.stopRecord()
clearInterval(interval)
}
})