微信小程序中有3个页面,分别为indexpage、detailpage、editpage,有一个自定义组件record-displayer和一个自定义组件record-pure。indexpage中有一个数据列表list,其元素为对象数据record,一个record绑定给一个record-displayer的属性,
indexpage页面在其onshow方法中从app.js的全局数据中获取最新的list,并更新视图数据。点击indexpage页面中的record-displayer组件时,通过record-displayer组件内定义的处理tap事件的方法,会使用wx.navigateTo()
跳转至detailpage页面,detailpage页面有一个record-pure组件,record-pure绑定有一个record数据,点击record-pure组件时,通过record-pure组件内定义的处理tap事件的方法,会使用wx.navigateTo()跳转至editpage页面,并监听跳转后页面的
delete事件。在editpage页面中有个“delete”按钮,点击该按钮后,app.js的全局数据中的list会删除一个record,并通过this.getOpenerEventChannel().emit('delete', record)向转来的页面发送delete事件,然后调用wx.navigateBack()返回至detailpage页面。detailpage页面的record-pure组件监听到
editpage页面的delete事件时,向detailpage页面抛出deleterecord事件,detailpage页面监听到deleterecord事件时,会调用wx.navigateBack()返回至indexpage页面。现在出现这样一个问题,在indexpage页面点击record-displayer组件进入到detailpage,然后
在detailpage页面点击record-pure组件,进入到editpage页面,点击editpage页面的“delete”按钮后,页面返回至indexpage。此时indexpage页面中显示list的一个record已被删除,但剩余的record-displayer组件点击无任何反应,点击页面内其他组件也无反应,
若再跳转至其他页面,然后又马上回到indexpage页面,indexpage页面中剩余的record-displayer组件又能正常点击反应了。哪个大神知道是怎么回事吗?