fix(segment): don't emit ionChange until didLoad (#19218)

fixes #19204
This commit is contained in:
Manu MA
2019-08-29 09:30:37 +02:00
committed by GitHub
parent 6eca5b0d7f
commit 9751f145e1
7 changed files with 67 additions and 25 deletions

View File

@@ -4,8 +4,15 @@
</ion-toolbar>
</ion-header>
<ion-content padding>
<ion-content class="ion-padding">
<h1>Welcome to Tab1</h1>
<ion-segment [(ngModel)]="segment" (ionChange)="segmentChanged($event)">
<ion-segment-button value="one">One</ion-segment-button>
<ion-segment-button value="two">Two</ion-segment-button>
</ion-segment>
<p>
Segment changed: <span class="segment-changed">{{changed}}</span>
</p>
<p>
<ion-button routerLink="/tabs/account/nested/1" id="goto-tab1-page2">Go to Page 2</ion-button>
<ion-button routerLink="/tabs/lazy/nested" id="goto-tab3-page2">Go to Tab 3 - Page 2</ion-button>

View File

@@ -6,6 +6,8 @@ import { Component, NgZone } from '@angular/core';
})
export class TabsTab1Component {
title = 'ERROR';
segment = 'one';
changed = 'false';
ionViewWillEnter() {
NgZone.assertInAngularZone();
@@ -14,4 +16,9 @@ export class TabsTab1Component {
this.title = 'Tab 1 - Page 1';
});
}
segmentChanged(ev: any) {
console.log('Segment changed', ev);
this.changed = 'true';
}
}

View File

@@ -4,8 +4,15 @@
</ion-toolbar>
</ion-header>
<ion-content padding>
<ion-content class="ion-padding">
<h1>Welcome to Tab 2</h1>
<ion-segment [(ngModel)]="segment" (ionChange)="segmentChanged($event)">
<ion-segment-button value="one">One</ion-segment-button>
<ion-segment-button value="two">Two</ion-segment-button>
</ion-segment>
<p>
Segment changed: <span class="segment-changed">{{changed}}</span>
</p>
<p>
<ion-button routerLink="/tabs/account" id="goto-tab1-page1">Go to Tab 1 - Page 1</ion-button>
<ion-button routerLink="/tabs/account/nested/1" id="goto-tab1-page2">Go to Tab 1 - Page 2</ion-button>

View File

@@ -6,6 +6,8 @@ import { Component, NgZone } from '@angular/core';
})
export class TabsTab2Component {
title = 'ERROR';
segment = 'two';
changed = 'false';
ngOnInit() {
NgZone.assertInAngularZone();
@@ -14,4 +16,9 @@ export class TabsTab2Component {
this.title = 'Tab 2 - Page 1';
});
}
segmentChanged(ev: any) {
console.log('Segment changed', ev);
this.changed = 'true';
}
}