[解決済み] プロパティ 'controls' がタイプ 'AbstractControl' に存在しない Angular 4 [duplicate] 。
2022-10-26 04:04:16
質問
Angular 4でネストしたリアクティブフォームを試しています。問題なく動作していますが、AOTをビルドしようとすると、次のようなエラーが発生します。
'controls' が 'AbstractControl' 型に存在しません。
ググっていろいろ試したのですが、うまくいきません。どなたか、この問題を解決する方法を教えていただけないでしょうか。
<div [formGroup]="myForm">
<div formArrayName="addresses">
<div *ngFor="let address of myForm.get('addresses').controls; let i=index"
class="panel panel-default">
<span *ngIf="myForm.get('addresses').length > 1"
(click)="removeAddress(i)">Remove</span>
<div [formGroupName]="i">
<mat-form-field>
<input matInput formControlName="city" placeholder="city" value="">
</mat-form-field>
</div>
</div>
</div>
<a (click)="addAddress()" style="cursor: default"> Add +</a>
</div>
以下、タイプスクリプトのコード
constructor(private _fb: FormBuilder) {
}
ngOnInit() {
this.myForm = this._fb.group({
addresses: this._fb.array([
this.initAddress(),
])
});
}
initAddress() {
return this._fb.group({
city: ['']
});
}
addAddress() {
const control = <FormArray>this.myForm.get('addresses');
control.push(this.initAddress());
}
removeAddress(i: number) {
const control = <FormArray>this.myForm.get('addresses');
control.removeAt(i);
}
どのように解決するのですか?
Günter Zöchbauerのコメントに基づいて、私は最初に変更しました。
myForm.controls['addresses']
を
myForm.get('addresses')
は、html と typescript の両方で
そして、@yuruzi さんのコメントに基づいて
を変更しました。
myForm.get('addresses').controls
を
myForm.get('addresses')['controls']
これで正常に動作するようになりました。ありがとうございます。
関連
-
[解決済み】プロパティ 'value' が 'HTMLElement' 型の値に存在しない。
-
[解決済み] モジュール "@angular-devkit/build-angular" が見つかりませんでした。
-
[解決済み】タイプ 'EventTarget' にプロパティ 'value' が存在しない。
-
[解決済み】TypeScriptのEventTarget型にプロパティ'value'が存在しない。
-
[解決済み】Angular 2 beta.17:プロパティ 'map' がタイプ 'Observable<Response>' に存在しない。
-
[解決済み] Angular 4/5/6 グローバル変数
-
[解決済み] .tsファイルはTypeScriptのコンパイルの一部ですが、使用されていませんという警告を消すには?
-
[解決済み] RxJSのmap演算子でエラーを出す方法 (angular)
-
[解決済み] コンストラクタ注入を行わずにサービスのインスタンスを取得する
-
[解決済み] 64進数の文字列を角(2+)でエンコードおよびデコードする。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ng buildの後にangular-cliのdist-folderのパスを変更するには?
-
[解決済み] Angular 2におけるEventEmitter.next()とEventEmitter.emit()の相違点
-
[解決済み] パイプ ' ' が見つかりません。
-
[解決済み] Angularでコンポーネントをリフレッシュする方法
-
[解決済み] プロパティ 'X' はプライベートであり、クラス 'xyzComponent' 内でのみアクセス可能です。
-
[解決済み] 簡単なパイプで小数点以下2桁に制限する
-
[解決済み] Angular v5からAngular v6にプロジェクトをアップグレードしたい。
-
[解決済み] Angular2 bodyタグにクラスを追加する
-
[解決済み] 新しいangularプロジェクトを作成する際に依存関係ツリーエラーを解決できない
-
[解決済み] AngularでFormGroupに動的にaddControlを追加する