uni-app h5端跳轉到底部導航欄的時候使用方法uni.switchTab跳轉刷新頁面更新數據


h5端的uni-app項目

需求:uni-app h5端跳轉到底部導航欄的時候使用方法uni.switchTab跳轉刷新頁面更新數據

百度的方法如下:

uni.switchTab({
    url: '/pages/index/main',
    success: function (e) { 
      var page = getCurrentPages().pop();
      console.log('page',page)
      if (page == undefined || page == null) return;
      page.onLoad();
    } 
})

但是在我這運行的時候就會報錯,說t.onLoad is not a function

在我輸出后判斷出來page獲取到的節點錯誤了

getCurrentPages()獲取到的是兩個節點,第一個節點才是真正的page節點,而page獲取到的節點是第二個的節點

粗暴點的辦法是:

var page = getCurrentPages()[0]

溫柔點的就是:

let le = getCurrentPages()
le.pop()
var page = le.pop()

此處不懂得可以去搜pop()的用法

 

然后繼續是page.onLoad(),我發現是不能獲取到的,所以我改為page.ceshi(),在ceshi()方法里編寫了刷新數據的方法,因此此問題得以解決。

最后的代碼如下:

uni.switchTab({
    url: '/pages/tabBar/order/order',
    success: function (e) {
    var page = getCurrentPages()[0]
    if (page == undefined || page == null) return;
    page.ceshi(); 
    }
});


免責聲明!

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



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