mpvue小程序 改变其它页面的数据
http://blog.sina.com.cn/s/blog_c42817dc0102y9pt.html
若从A页面跳到B页面(A--->B),在B页面操作完成后需要刷新A页面的数据,有两种思路:(推荐使用第2种方法)
1.在返回A页面的时候调用A的页面onShow()方法,重新查询加载一次A页面即可,代码为:
onShow: function () {
this.onLoad();
},
这种方法返回A页面时需要重新加载页面,太慢,太Low!!
2.这种方法是极力推荐的:
在B页面中进行操作的时候就在后台刷新A页面,当返回A页面的时候就不需要再刷新加载A页面了:
具体步骤分为两步:
(1)。在父页面中添加刷新数据的方法:changeData:function(){
this.onLoad();//最好是只写需要刷新的区域的代码,onload也可,效率低,有点low
}
(2)。在子页面中添加方法:并且在需要的地方进行调用(如success方法中setData之后调用that.changeParentData();)
changeParentData: function () {
var pages =getCurrentPages();//当前页面栈
if (pages.length >1) {
var beforePage = pages[pages.length- 2];//获取上一个页面实例对象
beforePage.changeData();//触发父页面中的方法
}
}