小程序返回传递参数
场景:个人中心页,部分功能需要用户登录才能使用,用户可以从个人中心去登录,跳转到登录页,登录完成之后,返回到个人中心页,需要主动刷新更新信息
问题:小程序返回上一页的apiwx.navigateBack()
不能传参,而且由于小程序钩子函数onLoad()
只执行一次,所以返回时,并不能触发onLoad()
函数,所以,我们只能在onShow
里面去做更新,,但是我们做更新的前提是,我们知道用户已经登录了
解决方法:wx.navigateBack()
有一个成功之后的回调,并且可以设置上一页的内容
const pages = getCurrentPages()
const prevPage = pages[pages.length - 2]
wx.navigateBack({
delta: 1,
success: () => {
prevPage.onShow('refresh')
}
})
这样我们就可以,再回到个人中心页面之后,可以在onShow
里面拿到这个参数,来根据这个参数来确定是否更新