我的项目中配置了以下标签:
tabs.html
<ion-tabs tabsPlacement="bottom" [selectedIndex]="0">
<ion-tab [root]="tab1Root" tabTitle="Home" tabIcon="pulse"></ion-tab>
<ion-tab [root]="tab2Root" tabTitle="About" tabIcon="information"></ion-tab>
</ion-tabs>
在&#34; Home&#34;页面(tab1Root),有一个按钮可以将根页面更改为&#34; Home v2&#34;页。
home.html的
<ion-content class="has-header" padding>
<div padding style="text-align: center;">
<h1>Home v1</h1>
<ion-button button (click)="setRootTab1ToHome2()">
Set Root of TAB1 to Home v2
</ion-button>
</div>
</ion-content>
home.ts
import { NavController } from 'ionic-angular/index';
import { Home2Page } from 'home2.ts'
import { Component } from "@angular/core";
@Component({
templateUrl:"home.html"
})
export class HomePage {
constructor(private nav: NavController) {
}
setRootTab1ToHome2() {
this.nav.setRoot(Home2Page);
}
}
如果通过单击可用按钮更改了TAB1根页面,然后我切换到TAB&#34;关于&#34;并改回TAB&#34; Home&#34;,我将看到Page&#34; Home v2&#34;而不是&#34; Home&#34;。 但是,如果我在TAB上点击两次&#34; Home&#34;它会回到Page&#34; Home&#34;。
如何恢复TAB&#34; Home&#34; root Page to&#34; Home v1&#34;而不是&#34; Home v2&#34;从Tab更改为Tab时?就像在TAB&#34; Home&#34;上点击两次的行为一样,只需点击一下。
请检查Plunker中的项目: https://plnkr.co/F5hAvypKxb9mhQDm3SDw