收藏
回答

页面卸载后回调事件依然存在

问题模块 框架类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 createInnerAudioContext() 客户端 6.6.3 1.9.91

问题是这样的。由于产品整个只允许一个音频播放,跳转至其他页面时,也可以判断播放状态。

所以我在app.js中定义了一个全局对象。

const innerAudioContext = wx.createInnerAudioContext()//音频播放;


在A页面onLoad中 注册了一遍 预防更换音频src多次触发回调。 这是正常的。

//播放回调

innerAudioContext.onPlay(() => {

console.log('开始播放')

})

但是我跳转入B页面中,由于要识别回调状态来改变Page数据。所以在B页面onLoad中也写入了

innerAudioContext.onPlay(() => {

console.log('开始播放')

})

结果在我返回A页面播放音乐时,

B页面明明是卸载的。但是却也触发了回调。


如何让B页面回调事件卸载后不执行?不能销毁实例,因为是全局对象。。


最后一次编辑于  2018-03-04  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

2 个回答