<!–pages/bofang/bofang.wxml–>
<button bindtap=‘bofang’>播放录音</button>
// pages/bofang/bofang.js
const innerAudioContext = wx.createInnerAudioContext();
Page({
bofang: function () {
innerAudioContext.src = “https://oss.medkr.com/files/1520504115434.m4a”;
innerAudioContext.play();
innerAudioContext.onPlay((res) => {
console.log(‘开始播放’)
})
innerAudioContext.onEnded((res) => {
console.log(‘播放完了’)
})
innerAudioContext.onStop((res) => {
console.log(‘播放停止’)
})
},
})
如果我使用的是addEvent,那出现这个现象的确很合理。但是我用的并不是addEvent啊!你觉得一个音频文件,的onPlay,onEnded和onStop事件只能正常执行一次是合理的吗?还是说你们做的这个东西就是一次性使用的,不能重复使用?您官方API可没有这么说吧。按您这么说,我每次想要执行,都要销毁全局音频文件,在重新创建一个新的全局音频?您觉得这个操作很合理吗?
这是一个on的监听,你每触发一次bofang 都会往对应的on监听新增一个回调处理,和浏览器的 addEvent(‘click’, function(){})一样,你add多次,那就会触发每一个回调,很合理。