問題タブ [angular2-formbuilder]
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.
angular - FormBuilderを使用してAngular 2で非同期呼び出しからデフォルトのフォームオブジェクト値を設定する
のリストを取得するために非同期呼び出しを行った後、 and を使用して、 の () 属性"@angular/forms": "~2.1.0"
のデフォルト値を "angular-cli": "1.0.0-beta.19-3"
設定しようとしています。FormGroup
campaignForm
campaign_config_id
campaignConfigs
別のSOの提案に従って次を使用しようとしましたが、TypeError: _this.campaignForm.controls.campaign_config_id.updateValue is not a function
.
、、およびその他のオブジェクトthis.campaignForm.controls['campaign_config_id']
へのキャストも試みましたが、どれも関数を持っていません。NgControl
FormControl
SelectControlValueAccessor
.updateValue
これを行う最善の方法について何か提案はありますか?
html - Angular 2 Reactive Forms チェックボックス - Bool を Number にバインド
チェックボックスとして表されるいくつかのインジケーターを持つフォーム モデルがあります。現在、それらの値はフォーム オブジェクト json で true/false としてモデル化されています。私が望むのは、それらの値をブール値から数値、それぞれ 1/0 に変換することです。これを行うスマートな方法はありますか?
コード例:
うまくいけば、上記は「myToggle」のタイプを数値に設定しようとしていることを示しています。フォームを初期化すると、デフォルトが 0 に設定され、チェックボックスが正しくオフのままになります。ただし、チェックボックスをチェック済みに更新すると、フォームの値が 1 ではなく true に設定されます。1 に更新したいです。この質問を介して、ブール値を数値に変換するためのいくつかのオプションがあることがわかります。ただし、これをリアクティブフォームモデルで実装する方法が正確にはわかりません。
angular - 同じ FormGroup を持つ 2 つのフォーム?
同じ FormGroup で 2 つのフォームを作成することはできますか?
エンティティを追加するフォームと編集するフォームがあります。どちらのフォームも同じフォーム要素を持っています。これまでのところ、2 つのフォーム グループを作成し、データにアクセスする必要があります。しかし、フォームグループをグローバルにして、それを両方のフォームで使用する必要があります。出来ますか?私を正しい方向に向けてください。どんなアドバイスも役に立ちます。ありがとうございました。
これが私のスニペットです:
AddEntityComponent:
このフォームグループは、addentitycomponent と editentitycomponent の両方で使用する必要があります。
validation - Angular2:FormGroupのカスタムバリデータを作成するには?
でフォームを作成していてFormBuilder
、 を に追加しValidator
たいformGroup
。これが私のコードです:
特定の条件で、アドレスの formControls の一部にバリデーターを条件付きで追加したいと考えています。
そこでvalidator
、次の方法でa を追加しました。
次に、アドレスのバリデーターの作成を開始しましたFormGroup
。
次の条件を追加する必要があります。
- すべてのフィールドが空の場合、フォームは有効です
- フィールドの 1 つが入力されている場合は、すべてのフィールドが必須である必要があります
place
(都市ではなく) 国のインスタンスである場合、postalcode
はオプションですpostalcode
が入力されている場合は、 その formControl に追加するzipValidator
必要があります
では、Angular2Validators
をFormGroup
特定の条件で追加することは可能ですか? もしそうなら、私の条件を実装する方法は?別のバリデーターのソースコードでsetValidators()
andを使用できますか?updateValueAndValidity()
angular - Angular 2フォームエラー:path.splitは関数ではありませんthis.myForm.get(i)
Angular 2 でネストされた動的フォームを作成しようとしています。
フォルムスケルトン
プログラムを動的に追加すると、次の関数で動作します:-
プログラムにチケットを追加するとエラーが発生します
.get(programme)
では、path.split は関数ではないと言っています
PS - 「get(programme)」のプログラムは、動的チケットが追加されるプログラム フォーム配列のインデックスです。*ngFor から正しく取得されます。例: - 追加された最初のプログラムのインデックス 0。
forms - 初期値の設定Angular 2リアクティブformarray
angular 2 リアクティブ フォーム formArray オブジェクトの初期値を設定しようとしています。
フォーム値の設定に使用される json オブジェクトには複数のエントリを持つ配列値が含まれていますが、最初のエントリのみが表示され、「form.value」も最初のエントリのみが表示されます。
構文(<FormGroup>this.myForm).patchValue(value, { onlySelf: true });
を使用して、フォームに初期値を設定しています。
これは、問題を示すプランカーです: https://plnkr.co/edit/j1S80CmPBF1iHI5ViEia?p=preview
https://scotch.io/tutorials/how-to-build-nested-model-driven-forms-in-angular-2の例を使用してプランカーを作成しました。
私が間違ったことをしたアイデアはありますか?
angular - Angular 2マルチステップフォームプログレスバー
( http://plnkr.co/edit/M03tYgtfqNH09U4x5pHC?p=preview )に非常に似ているが、angular2を使用するフローを作成しようとしています。状態やデータを考慮していませんが、フローの準備はできていますが、プログレスバーにもっと興味があり、プログレスバーのどこから始めて、同じようにアプローチするかについて完全に迷っています。これについて何か助けていただければ幸いです。これは、私が持っているコンポーネントの基本的な概要です。これは静的であり、何もしません。
事前にどうもありがとうございました
forms - Angular2:バリデーターを追加して必須を除外する方法
ユーザーが入力したメールアドレスをチェックするカスタムバリデーターを作成しました。とにかく、電子メールフィールドは必須ではありませんが、バリデーターを追加すると、それも含まrequired
れます。
constructor
私のコンポーネントクラスのフォームは次のとおりです。
電子メール フィールドは必須ではありませんが、ユーザーが入力しない場合、フォームは検証されません。同時に、ユーザーが入力すると、電子メールの検証が適用されます。
これが私の電子メールバリデータです:
空の文字列を受け入れるようにカスタム バリデータを編集できますが、これは問題を解決する正しい方法ではないと思います。
もっと良いアイデアはありますか?
angular - Angular2 で formBuilder を介してフォームを作成するときに formControl にアクセスする方法
以下のコードがあります
valueChanges
ofに登録したいのですtitle
が、Cannot read property 'valueChanges' of undefined
エラーが発生します。
サブスクライブできthis.profileForm.valueChanges
ますが、タイトルが変更されたときに何らかのデバウンスと API 呼び出しを行いたいです。
あなたが持っていれば、そのFormControl
変更を購読できるようですが、私はFormBuilder
構文を使用しているため、にアクセスできませんFormControl
。