中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

微信小程序返回上一頁傳參并刷新過程解析

發布時間:2020-10-07 00:31:12 來源:腳本之家 閱讀:210 作者:HeSh 欄目:web開發

這篇文章主要介紹了微信小程序返回上一頁傳參并刷新過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

問題

微信小程序onLoad(options)方法在整個生命周期中只加載一次,也就是你進入下個頁面,再返回時,是不會再次觸發的,所以你返回是url傳參是行不通了。

需求

現在有這么一個需求:一個商品支付頁面,點擊優惠卷進入優惠券列表頁,選中優惠券后帶著數據再返回到支付頁面。

方法

一、使用到的方法是小程序的頁面棧,感興趣可以打印一下pages的內容,就是你頁面跳轉的軌跡數組,最后一項就是當前頁面,倒數第二個就是上一頁。很好理解,因為在當前頁停止了,肯定是最后一個

//獲取頁面棧
let pages = getCurrentPages();
//獲取所需頁面
let currPage = pages[pages.length - 1];//當前頁面
let prevPage = pages[pages.length -2];//上一頁

二、在支付頁把需要再次刷新的數據都放到onShow()方法中,不需要刷新的放到onLoad()方法中

思路

1、我們的目標是把優惠券的數據渲染到支付頁上,所以先在優惠券頁面點擊優惠券的時候通過頁面棧獲取到上一頁(也就是支付頁),將本條數據動態添加到支付頁的data中

//獲取頁面棧
let pages = getCurrentPages();
//獲取所需頁面
let prevPage = pages[pages.length -2];//上一頁
prevPage.setData({
  yourData:yourData,//你需要傳過去的數據
});

2、將需要刷新的數據放到onShow()方法中

//這里展示在onShow方法中獲取當前頁onLoad方法中的options
onShow:function(){
  let pages = getCurrentPages();
  let currPage = pages[pages.length - 1];
  //當前頁的options,啥意思呢,就是你可能某個函數需要刷新,但是他的參數正好是傳過來的參數
  console.log(currPage.options); 
}

你在優惠券頁點擊之后,因為你的數據已經存到支付頁了,所以返回支付頁后,你可以直接在data中獲取到你需要的數據,進行你需要的操作。

Ok,這就完事了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丹棱县| 鄱阳县| 西城区| 雅江县| 玉溪市| 澎湖县| 禄丰县| 团风县| 密山市| 互助| 繁峙县| 鄯善县| 成武县| 曲周县| 固原市| 红安县| 峨边| 富阳市| 弥勒县| 鸡泽县| 山阴县| 清流县| 马山县| 南投市| 徐汇区| 射阳县| 连云港市| 沭阳县| 庐江县| 招远市| 太和县| 涞水县| 双江| 城口县| 泉州市| 金湖县| 班玛县| 华宁县| 佛学| 渑池县| 芮城县|