舟山闪爸电子技术有限公司

小程序——帶參返回上一頁幾種方法

小程序的頁面跳轉(zhuǎn)API像wx.navigateTo()、wx.redirectTo()之類的,都是跳轉(zhuǎn)到一個全新的頁面,當這個頁面是表單的時候,有時候需要跳轉(zhuǎn)到其它頁面選取信息后再跳轉(zhuǎn)回來,那之前填的信息就必須得存在,這個時候可以當跳轉(zhuǎn)到選擇信息的頁面,選中信息后設(shè)置設(shè)置上一頁的data,然后再返回到上一頁,這樣數(shù)據(jù)都會存在。

小程序——帶參返回上一頁幾種方法

方法一 
把當前頁面數(shù)據(jù)放入本地緩存( wx.setStorage(wx.setStorageSync),上一個頁面再從緩存中取出(wx.getStorage(wx.getStorageSync))同時退出登錄時要清除緩存(wx.clearStorage(wx.clearStorageSync))。

方法二

 

  1.  
  2. 在當前頁設(shè)置上一頁的data,例如
  3. var pages = getCurrentPages(); // 獲取頁面棧
  4. var currPage = pages[pages.length - 1]; // 當前頁面
  5. var prevPage = pages[pages.length - 2]; // 上一個頁面
  6. prevPage.setData({
  7. mydata: {a:1, b:2} // 假數(shù)據(jù)
  8. })

當然這個“mydata”必須是上一頁有的數(shù)據(jù)才行

返回上一頁的數(shù)據(jù)為:

 

  1.  
  2. wx.navigateBack({
  3. delta: 1
  4. })

2、直接調(diào)用方法名來更新數(shù)據(jù)  頁面A

 

  1. Page({
  2. data: {
  3. name: ''
  4. },
  5. ...
  6. ,
  7. //更新name
  8. changeData: function(name){
  9. this.setData({
  10. name: name
  11. })
  12. }
  13. })

頁面B,假設(shè)有一個文本框用于輸入姓名,點擊返回按鈕后更新頁面A的name

 

  1. Page({
  2. //此方法用于文本框輸入回調(diào)
  3. inputTyping: function (e) {
  4. //獲取頁面棧
  5. var pages = getCurrentPages();
  6. if(pages.length > 1){
  7. //上一個頁面實例對象
  8. var prePage = pages[pages.length - 2];
  9. //關(guān)鍵在這里
  10. prePage.changeData(e.detail.value)
  11. }
  12. }
  13. })

這樣就可以實現(xiàn)數(shù)據(jù)傳遞給上一個頁面,要注意頁面A必須使用wx.navigateTo跳轉(zhuǎn)到頁面B,不能使用wx.redirectTo,這樣會關(guān)閉上一個頁面,導致頁面B無法獲取上一頁Page實例。

方法三  在app.js中設(shè)置全局變量,當前頁賦值,上一頁取之

方法為

 

  1. globalData: {
  2. userInfo: null,
  3. }

注意:方法一,方法三,都需要重新刷新頁面數(shù)據(jù)所走方法為:

 

  1. /**
  2. * 生命周期函數(shù)--監(jiān)聽頁面顯示
  3. */
  4. onShow: function () {
  5.  
  6. },

 

小程序——帶參返回上一頁幾種方法


【本站聲明】
  1、本站文章中所選用的圖片及文字來源于網(wǎng)絡(luò)以及用戶投稿,由于未聯(lián)系到知識產(chǎn)權(quán)人或未發(fā)現(xiàn)有關(guān)知識產(chǎn)權(quán)的登記,如有知識產(chǎn)權(quán)人并不愿意我們使用,如果有侵權(quán)請立即聯(lián)系。
  2、本網(wǎng)站不對文章中所涉及的內(nèi)容真實性、準確性、可靠性負責,僅系客觀性描述,如您需要了解該類商品/服務(wù)詳細的資訊,請您直接與該類商品/服務(wù)的提供者聯(lián)系。


KESION 科汛軟件

KESION 科汛軟件是國內(nèi)領(lǐng)先的在線教育軟件及私域社交電商軟件服務(wù)提供商,長期專注于為企業(yè)提供在線教育軟件及社交電商SaaS平臺解決方案。
公司核心產(chǎn)品云開店SaaS社交電商服務(wù)平臺、在線教育SaaS服務(wù)平臺、教育企業(yè)數(shù)字化SaaS云平臺、企微營銷助手、私有化獨立部署品牌網(wǎng)校和在線教育咨詢等。

KESION 不斷通過技術(shù)創(chuàng)新,提供產(chǎn)品和服務(wù),助力企業(yè)向數(shù)字化轉(zhuǎn)型,通過科技驅(qū)動商業(yè)革新,讓商業(yè)變得更智慧!



▼點擊進入科汛官網(wǎng)了解更多



熱門標簽
SaaS
上/下篇
換一換相關(guān)推薦
精選內(nèi)容
熱點精選