微信小程序判断是否有上一页,有则wx.navigateBack跳到上一页
时间: 2024-09-24 20:29:07 浏览: 98
小程序怎样让wx.navigateBack更好用的方法实现
微信小程序中,如果你想在用户尝试进入新的页面前检查是否存在上一页面,并在存在时调用`wx.navigateBack`返回上一页,可以使用`onShow`生命周期钩子函数。在这个函数里,你可以检查当前页面是否是从其他页面通过导航过来的,例如:
```javascript
Page({
onShow: function() {
const from = wx.getStorageSync('from') || null; // 获取从哪个页面跳转过来的信息,如果没有存储则默认为null
if (from) { // 如果有存储值,说明有上一页
wx.navigateBack({
delta: 1, // 回退一层,如果希望回退更多层,则调整delta的值
animation: 'slide-out-right', // 动画效果,默认为None
historyBack: true // 是否保留历史记录,默认为true
});
} else {
// 如果没有上一页,直接显示此页
}
},
})
```
在用户离开当前页面时,可以将`from`信息保存到本地存储,以便在下一次展示时判断。注意,这个方法假设每次进入新页面时都会清除`from`信息,如果不是这样,你需要在相应的`onHide`或`onUnload`等生命周期事件中清理。
阅读全文