uni-app 之返回上一個頁面並傳遞參數(以微信小程序為例)


在uni-app中,想要返回頁面時獲取參數。需要用到當前頁面的堆棧getCurrentPages()

背景

 要求:從頁面1跳轉到頁面2, 然后頁面2返回頁面1時代參數。

實現

在頁面2返回按鈕,或監聽返回事件時,執行方法。

 1 reBack: function() {
 2     let pages = getCurrentPages();
 3     if (pages.length >= 2) {
 4         let curPage = pages[pages.length - 1]; // 當前頁面
 5         let prePage = pages[pages.length - 2]; // 上一頁面
 6         // #ifdef H5
 7         prePage.$vm.param1 = 1;
 8         prePage.$vm.param2 = 2;
 9         // #endif
10         // #ifdef MP-WEIXIN || MP-QQ
11         prePage.setData({
12             param1: 1,
13             param2: 2
14         })
15         // #endif
16         uni.navigateBack();
17     }
18 }

在頁面1的生命周期 onShow 監聽或獲取當前頁面的參數。

onShow: function() {
    let pages = getCurrentPages();
    let curPage = pages[pages.length - 1];
    // #ifdef MP-WEIXIN || MP-QQ
    console.log("param1", curPage.data.param1);
    console.log("param2", curPage.data.param2);
    // #endif
    // #ifdef H5
    console.log("param1", curPage.$vm.param1);
    console.log("param2", curPage.$vm.param2);
    // #endif
},

這里,當從頁面2返回頁面1時,輸出值為

param1 1param2 2

注:H5 和微信、QQ等小程序設置和獲取頁面參數的方法不同。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM