小程序带参返回上一页的方法有哪些
這篇文章主要介紹“小程序帶參返回上一頁的方法有哪些 ”,在日常操作中,相信很多人在小程序帶參返回上一頁的方法有哪些 問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”小程序帶參返回上一頁的方法有哪些 ”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
小程序的頁面跳轉API像wx.navigateTo()、wx.redirectTo()之類的,都是跳轉到一個全新的頁面,當這個頁面是表單的時候,有時候需要跳轉到其它頁面選取信息后再跳轉回來,那之前填的信息就必須得存在,這個時候可以當跳轉到選擇信息的頁面,選中信息后設置設置上一頁的data,然后再返回到上一頁,這樣數據都會存在。
方法一
把當前頁面數據放入本地緩存( wx.setStorage(wx.setStorageSync),上一個頁面再從緩存中取出(wx.getStorage(wx.getStorageSync))同時退出登錄時要清除緩存(wx.clearStorage(wx.clearStorageSync))。
方法二
在當前頁設置上一頁的data,例如varpages=getCurrentPages();//獲取頁面棧varcurrPage=pages[pages.length-1];//當前頁面varprevPage=pages[pages.length-2];//上一個頁面prevPage.setData({mydata:{a:1,b:2}//假數據})
當然這個“mydata”必須是上一頁有的數據才行
返回上一頁的數據為:
wx.navigateBack({delta:1})
2、直接調用方法名來更新數據 頁面A
Page({data:{name:''},...,//更新namechangeData:function(name){this.setData({name:name})}})
頁面B,假設有一個文本框用于輸入姓名,點擊返回按鈕后更新頁面A的name
Page({//此方法用于文本框輸入回調inputTyping:function(e){//獲取頁面棧varpages=getCurrentPages();if(pages.length>1){//上一個頁面實例對象varprePage=pages[pages.length-2];//關鍵在這里prePage.changeData(e.detail.value)}}})
這樣就可以實現數據傳遞給上一個頁面,要注意頁面A必須使用wx.navigateTo跳轉到頁面B,不能使用wx.redirectTo,這樣會關閉上一個頁面,導致頁面B無法獲取上一頁Page實例。
方法三 在app.js中設置全局變量,當前頁賦值,上一頁取之
方法為
globalData:{userInfo:null,}
注意:方法一,方法三,都需要重新刷新頁面數據所走方法為:
/***生命周期函數--監聽頁面顯示*/onShow:function(){},
總結
以上是生活随笔為你收集整理的小程序带参返回上一页的方法有哪些的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAP S/4HANA里的生产订单,标识
- 下一篇: 王者荣耀极寒是什么