溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

小程序帶參返回上一頁的方法有哪些

發(fā)布時間:2022-03-15 10:53:02 來源:億速云 閱讀:700 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“小程序帶參返回上一頁的方法有哪些 ”,在日常操作中,相信很多人在小程序帶參返回上一頁的方法有哪些 問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”小程序帶參返回上一頁的方法有哪些 ”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

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

小程序帶參返回上一頁的方法有哪些

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

方法二

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

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

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

 wx.navigateBack({delta: 1})

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

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

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

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

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

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

方法為

globalData: {userInfo: null,}

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

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

到此,關(guān)于“小程序帶參返回上一頁的方法有哪些 ”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI