以下を使用してprodビルドを実行しようとすると、次のエラーが発生します
イオンコルドバビルドブラウザ--prod
のようなターミナルで多くの警告を取得する
FormBuilderが宣言されていますが、使用されていません
私のコードではそれをインポートして使用していますが、例えば.
import { Validators, FormGroup, FormBuilder } from '@angular/forms';
public form: FormGroup;
constructor(
private formBuilder: FormBuilder
) {
setForm(){
this.form = this.formBuilder.group({
password: ['', Validators.required],
password2: ['', Validators.required]
});
}
誰かが同様の問題を抱えていましたか?私の推測では、それはnpmパッケージの更新と関係があるでしょう。
どんなアドバイスも素晴らしいでしょう。
ありがとう!
同じ問題があります。これは、tslint5.0が未使用の変数のチェック方法を変更したためです。
tslint.jsonファイルのルールを変更することで、警告を抑制できます。 「no-unused-variable」をtrueからfalseに変更したので、次のようになります。
{
"rules": {
"no-duplicate-variable": true,
"no-unused-variable": [
false
]
},
"rulesDirectory": [
"node_modules/tslint-eslint-rules/dist/rules"
]
}
もちろん、これにより未使用の変数に関するすべての警告が抑制されますが、いつでもtrueに戻して、他に未使用の変数があるかどうかを確認できます。
次の変数を追加することもできます"noUnusedLocals":truetsconfig.jsonファイル:
{
"compilerOptions": {
"noUnusedLocals": true,
.
.
.
}
"noUnusedLocals":trueは、警告ではなくエラーをスローすることを知っておいてください...
お役に立てれば
私のionic 3アプリでの作業フォーム:
_import {FormBuilder, FormGroup, Validators } from '@angular/forms';
@IonicPage()
@Component({
selector: 'page-mobile-login',
templateUrl: 'mobile-login.html',
})
export class MobileLoginPage {
public loginForm:FormGroup;
constructor(public navCtrl: NavController,
public navParams: NavParams,
public formBuilder: FormBuilder)
{
this.loginForm = formBuilder.group({
mobile: ['', Validators.compose([Validators.required,Validators.pattern('[0-9 ]*'),
Validators.maxLength(10),Validators.minLength(10)])]
});
}
}
_
コンストラクターで別の関数setForm()
を使用していることが問題のようです。
mobile-login.html
_<form [formGroup]="loginForm" (submit)="submitMobile()" novalidate>
<ion-list padding-right padding-left>
<ion-item no-padding>
<ion-input formControlName="mobile" type="tel"
placeholder="Enter Mobile" minlength="10" maxlength="10"
[class.invalid]="!loginForm.controls.mobile.valid && loginForm.controls.mobile.dirty">
</ion-input>
</ion-item>
<ion-item no-padding class="error-message"
*ngIf="!loginForm.controls.mobile.valid && loginForm.controls.mobile.dirty">
<p ion-text>
Enter Valid Mobile Number
</p>
</ion-item>
</ion-list>
<ion-row responsive-sm padding-right padding-left>
<ion-col class="otpbutton">
<button color='navbarColor' class="bluebg" ion-button block icon-left type="submit" [disabled]="!loginForm.valid">
<ion-icon name="phone-portrait"></ion-icon>
Submit
</button>
</ion-col>
</ion-row>
</form>
_