您的当前位置:首页正文

微信小程序 修改二级页面后返回一级页面刷新一级页面

2024-11-30 来源:个人技术集锦

在修改二级页面后直接返回一级页面,并且二级页面的数据跟一级页面有一定的关联性,这个时候返回就应该改变一级页面的数据,要想实现这个功能,有以下几个思路

一、在二级页面修改成功后,把修改的内容保存到缓存或者全局变量里,在一级页面里的show方法里接收这个保存的数据,并修改相应的数据,在卸载这个页面的方法里手动去除缓存或把全局变量里的值置为null

二级页面保存数据

//保存到全局变量中
var app = getApp()
app.globalData.testdata = {a:1}; 
//保存到数据缓存中
wx.setStorageSync('b', '2');

返回一级页面后获取数据

//获取保存在全局里的变量
let a=app.globalData.testdata.a;
//获取保存在缓存里的数据
let b=wx.getStorageInfoSync('b')

然后修改数据就行了

二、在路由栈里获取当前路由和前一个路由,调用前一个路由的setdata方法,直接修改前一个页面的数据

var pages = getCurrentPages();
var currPage = pages[pages.length - 1];   //当前页面
var prevPage = pages[pages.length - 2];  //上一个页面

//直接调用上一个页面的setData()方法,把数据存到上一个页面中去
prevPage.setData({
  data: {a:1, b:2}
})



显示全文