私のionic 3アプリでは非常に奇妙な問題があります。私はアプリに機能を追加しています。この機能には、Angular 2+フォームとバリデーターを使用した複数ステップ入力プロセスが含まれています。ウェブ、Android、および古いiOSデバイス(iOS 9)ではすべて問題なく機能していました。Ionic 2+、iOSのみ問題:ページロードによるプラグインのリセット
Resetting plugins due to page load
そして、アプリを再起動し:iOSの10に私は私の最初のフォームのステップを提出した後、次を得ます。メインのトリガポイントは、最初のフォームを隠して2番目のフォームを表示するこの最初のステップの後にブール値を設定しているようです。 1行で問題を防ぐことができます。
iOS 10でこのエラーがなぜ発生しているのかを知るためにできることはありますか?例えば、余分なロギング?
HTML
<ion-card>
<ion-card-header>
<ion-icon name="person-add"></ion-icon> Sign Up!
</ion-card-header>
<!--Step 1 - confirm user-->
<ion-list no-lines *ngIf="!hasConfirmedStep1">
<form [formGroup]="formStepOne">
<...SNIP...>
<ion-item>
<button ion-button icon-right float-right small (click)="checkUser()" [disabled]="!formStepOne.valid">
Next
<ion-icon name="arrow-round-forward"></ion-icon>
</button>
</ion-item>
</form>
</ion-list>
<!--Step 2...Create Account-->
<ion-list no-lines *ngIf="hasConfirmedStep1 && !hasConfirmedStep2">
<form [formGroup]="formStepTwo">
<!--Email/Confirm email-->
<div formGroupName="validEmail">
<...SNIP...>
</div>
<ion-item>
<button ion-button icon-right float-right small (click)="createUser()" [disabled]="!formStepTwo.valid">
Next
<ion-icon name="arrow-round-forward"></ion-icon>
</button>
</ion-item>
</form>
</ion-list>
</ion-card>
TS
async checkUser() {
this.hasSubmittedStep1 = true;
this.errorMessage = this.successMessage = "";
if (!this.formStepOne.valid) {
this.loggingService.debug("Invalid signup form for Check User");
this.errorMessage = "Please enter valid input.";
}
else {
this.loggingService.debug("Valid signup form for Check User. Checking info...");
//Confirm User
this.successMessage = 'Confirmed! Please Create Account.';
this.hasConfirmedStep1 = true;
}
}
うわー,,素晴らしい、あまりにもうまくいって、時間を節約してくれてありがとう:) –