小程序带参返回上一页的方法有哪些

这篇文章主要介绍“小程序带参返回上一页的方法有哪些 ”,在日常操作中,相信很多人在小程序带参返回上一页的方法有哪些 问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”小程序带参返回上一页的方法有哪些 ”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

小程序的页面跳转API像wx.navigateTo()、wx.redirectTo()之类的,都是跳转到一个全新的页面,当这个页面是表单的时候,有时候需要跳转到其它页面选取信息后再跳转回来,那之前填的信息就必须得存在,这个时候可以当跳转到选择信息的页面,选中信息后设置设置上一页的data,然后再返回到上一页,这样数据都会存在。

小程序带参返回上一页的方法有哪些  小程序 第1张

方法一 
把当前页面数据放入本地缓存( wx.setStorage(wx.setStorageSync),上一个页面再从缓存中取出(wx.getStorage(wx.getStorageSync))同时退出登录时要清除缓存(wx.clearStorage(wx.clearStorageSync))。

方法二

在当前页设置上一页的data,例如var pages = getCurrentPages(); // 获取页面栈var currPage = pages[pages.length - 1]; // 当前页面var prevPage = pages[pages.length - 2]; // 上一个页面prevPage.setData({mydata: {a:1, b:2} // 假数据})
  1.  

当然这个“mydata”必须是上一页有的数据才行

返回上一页的数据为:

 wx.navigateBack({delta: 1})

2、直接调用方法名来更新数据  页面A

Page({data: {name: ''},...,//更新namechangeData: function(name){this.setData({name: name})}})

页面B,假设有一个文本框用于输入姓名,点击返回按钮后更新页面A的name

Page({//此方法用于文本框输入回调inputTyping: function (e) {//获取页面栈var pages = getCurrentPages();if(pages.length > 1){//上一个页面实例对象var prePage = pages[pages.length - 2];//关键在这里prePage.changeData(e.detail.value)}}})

这样就可以实现数据传递给上一个页面,要注意页面A必须使用wx.navigateTo跳转到页面B,不能使用wx.redirectTo,这样会关闭上一个页面,导致页面B无法获取上一页Page实例。

方法三  在app.js中设置全局变量,当前页赋值,上一页取之

方法为

globalData: {userInfo: null,}

注意:方法一,方法三,都需要重新刷新页面数据所走方法为:

/*** 生命周期函数--监听页面显示*/onShow: function () { },

到此,关于“小程序带参返回上一页的方法有哪些 ”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注蜗牛博客网站,小编会继续努力为大家带来更多实用的文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接