Ionic 3选择标签ionViewDidEnter

时间:2017-07-14 19:26:12

标签: tabs ionic3

我有一个“ TabsPage ”这是应用的第一页。我在此页面的this.tabs.select(3)内使用ionViewDidEnter来选择第4个标签。这将打开第4个选项卡作为默认选项卡,但类.scroll-content的div没有上边距,因此它在标题后面上升。但是,如果我使用超时,如:

setTimeout(() => {
  this.tabs.select(3);
}, 5000)

打开第4个标签时,一切似乎都没问题。您认为问题是什么?

1 个答案:

答案 0 :(得分:0)

这听起来像是您正在使用的生命周期事件类型的声明问题。在创建视图后声明选项卡,我怀疑选项卡选择的触发与视图本身的创建之间存在误传(这就是为什么你使用setTimeout()这真的很笨拙的原因。)< / p>

您可以在 生命周期事件

部分下阅读有关生命周期事件here的更多信息

您可以尝试点击ionViewWillEnter(){}并设置标签而不会超时。

您还应该可以在标签标记中使用tab input property

<ion-tabs selectedIndex="3">
  

selectedIndex(数字)
    首次加载时默认选择的选项卡索引。    如果未提供所选索引,则它将使用0,即第一个选项卡。

因为所选索引是在视图中的选项卡组件中定义的,所以选项卡的视图初始化应该没有问题。