如题,当使用AudioContext的onXXX挂载事件处理器的时候,由于目前的机制只提供挂载,不提供反挂载,所以如果重复调用某个onXXX挂载处理器,会触发以下的报警信息(可能会导致内存泄漏)
WAService.js:4 (node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
测试代码
let ctx = wx.createInnerAudioContext();
ctx.onCanplay(() => {});
.... // 重复9次
ctx.onCanplay(() => {}); // 这里会出现上面的warning
希望可以提供取消挂载事件的接口让我们可以清理不必要的事件,以达到重用实例的目的,不然每次播放新的音频,都只能创建一个新的实例,并且播放完成后都只能销毁实例,因为不知道这个逻辑重不重io,所以担心效率比较低
感谢反馈