問題タブ [reactive-forms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
745 参照

angular - Angular 2 Reactive Forms、サービスから入力されたコントロールを選択

Angular のリアクティブ フォームを使用しようとしていますが、サービスによって埋められたドロップダウン リストのデフォルト値バインディングを遅らせる方法がわかりません。私のコンポーネントのコードの断片は次のとおりです。

ここでの考え方は、「id」パラメーターを取得して、転送エンティティのサービスを呼び出し、アカウント エントリが事前に入力されたドロップダウンでフォームにバインドすることです。私のビューの一部は次のようになります。

Transfer エンティティはほとんどのフィールドで正しくバインドされますが、'accountFromId' 選択要素は空の値が選択されたままになります (オプションはありますが、適切に選択されていません)。サービスからアカウント値を取得し、それらを追加して選択した後、accountFromId が確実にバインドされるようにコンポーネントを再配線するにはどうすればよいですか?

0 投票する
0 に答える
3103 参照

angular - リアクティブフォームで ngModel を使用する

私のアプリケーションでは、テンプレート駆動の検証を使用していましたが、モデル駆動型のアプローチに切り替える必要がありますが、双方向のデータバインディングを削除したくありませんでした.だから私のhtmlコントロールはそのようなものでした.

しかし、それはこのエラーをスローし始めました

次に、この [ngModelOptions]="{standalone: true}" を html コントロールに追加しましたが、[ngModelOptions] は入力の既知のプロパティではありませんというエラーが表示されました。

[ ngModelOptions ] を ng-model-options に置き換えたときに入力の既知のプロパティではないという問題が解消されましたが、「ngModel を使用してフォーム コントロールを親の formGroup ディレクティブに登録することはできません」というエラーが引き続き表示されました。フォームに検証を必要としない 2 つのフィールドがあったため、それらには formControlName 属性がありませんでした。回避策として、これらの 2 つのフィールドを fromgroup の一部にして、それらに formControlName 属性を追加しました。現在は正常に機能しています。ただし、これら 2 つのフィールドの検証は必要ありませんでしたが、少なくともエラーは発生していません。