场景:
- 当遇到子界面修改数据,返回父界面需要刷新父界面数据时,我们这样解决:
方法1:
- 由于打开一个Page,onLoad方法只会执行一次,像是网络请求的方法可以放在onShow中(但是会执行两次,父界面打开时执行,子界面返回到父界面时再回刷新一次,比较low 浪费流量)
方法2 :
- 在子界面中 调用:
var t = getCurrentPages()[getCurrentPages().length - 2] \\获取的t 相当于父界面的this
\\直接设置父界面数据
t.setData({
//比如
name:this.data.nickName //注意name位于父界面
})
方法3 :
- 在子界面中 调用:(如果发生了数据的变化)
var t = getCurrentPages()[getCurrentPages().length - 2] \\获取的t 相当于父界面的this
\\直接调用父界面数据
t.getData();//直接调用父界面 比如获取数据的方法getData()
结语:
- 如果你有更好的方法 欢迎品论
本文探讨了在子界面修改数据后,如何有效刷新父界面数据的问题。提供了三种解决方案:1. 在父界面的onShow中进行网络请求;2. 直接在子界面中调用父界面的setData方法;3. 调用父界面的数据获取方法。每种方法都有其适用场景和局限性。
771

被折叠的 条评论
为什么被折叠?



