查看: 20|回覆: 0

uni-app h5端跳转到底部导航栏的时候使用方法uni.switchTab跳转刷新页面更新数据

[複製鏈接]

2

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2012-4-5
發表於 2019-7-17 18:26:00 | 顯示全部樓層 |閲讀模式

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(); 
    }
});
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部