两个页面getRecorderManager的onStop冲突
发布于 4 年前 作者 nayuan 6099 次浏览 来自 问答

您好,我现在遇到了一个问题。

我在两个页面index和detail页面的page上边声明了两个

const recorderManager = wx.getRecorderManager();

然后在各自的onload中声明了onstop事件,现在出现了一个问题

程序启动进入首页(index页)以后,在进入detail页面,再回到首页,进行录音

此时录音结束以后的onstop执行的却是detail页面的事件,不知道该如何处理,麻烦指导下

谢谢

//index.js
//获取应用实例
const app = getApp()
const recorderManager = wx.getRecorderManager();
const innerAudioContext = wx.createInnerAudioContext();
var util = require('../../utils/util.js');
Page({
 。。。。。。。
onLoad: function (options) {
    var that = this;
    innerAudioContext.onPlay(() => {
 
    })
    recorderManager.onStart(() => {
 
    });
    recorderManager.onStop((res) => {
      console.log("首页输出")
})
})

上边是index的

const app = getApp();
const recorderManager = wx.getRecorderManager();
const innerAudioContext = wx.createInnerAudioContext();
var util = require('../../utils/util.js');
Page({
。。。。。
  onLoad: function (options) {
  recorderManager.onStop((res) => {
      console.log("detail输出")
})
}
})
4 回复

who can help me

麻烦了解 的指导下

找到原因了,你的onstop在第二个页面被覆盖了,返回第一个页面时onload不运行的,所以把onstop放在onShow里面,这个会运行,解决了

这就沉了么…… 谁来解答下

回到顶部