問題タブ [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.

0 投票する
2 に答える
1603 参照

angular - FormBuilderを使用してAngular 2で非同期呼び出しからデフォルトのフォームオブジェクト値を設定する

のリストを取得するために非同期呼び出しを行った後、 and を使用して、 の () 属性"@angular/forms": "~2.1.0"のデフォルト値を "angular-cli": "1.0.0-beta.19-3"設定しようとしています。FormGroupcampaignFormcampaign_config_idcampaignConfigs

別のSOの提案に従って次を使用しようとしましたが、TypeError: _this.campaignForm.controls.campaign_config_id.updateValue is not a function.

、、およびその他のオブジェクトthis.campaignForm.controls['campaign_config_id']へのキャストも試みましたが、どれも関数を持っていません。NgControlFormControlSelectControlValueAccessor.updateValue

これを行う最善の方法について何か提案はありますか?

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

html - Angular 2 Reactive Forms チェックボックス - Bool を Number にバインド

チェックボックスとして表されるいくつかのインジケーターを持つフォーム モデルがあります。現在、それらの値はフォーム オブジェクト json で true/false としてモデル化されています。私が望むのは、それらの値をブール値から数値、それぞれ 1/0 に変換することです。これを行うスマートな方法はありますか?

コード例:

うまくいけば、上記は「myToggle」のタイプを数値に設定しようとしていることを示しています。フォームを初期化すると、デフォルトが 0 に設定され、チェックボックスが正しくオフのままになります。ただし、チェックボックスをチェック済みに更新すると、フォームの値が 1 ではなく true に設定されます。1 に更新したいです。この質問を介して、ブール値を数値に変換するためのいくつかのオプションがあることがわかります。ただし、これをリアクティブフォームモデルで実装する方法が正確にはわかりません。

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

angular - 同じ FormGroup を持つ 2 つのフォーム?

同じ FormGroup で 2 つのフォームを作成することはできますか?

エンティティを追加するフォームと編集するフォームがあります。どちらのフォームも同じフォーム要素を持っています。これまでのところ、2 つのフォーム グループを作成し、データにアクセスする必要があります。しかし、フォームグループをグローバルにして、それを両方のフォームで使用する必要があります。出来ますか?私を正しい方向に向けてください。どんなアドバイスも役に立ちます。ありがとうございました。

これが私のスニペットです:

AddEntityComponent:

このフォームグループは、addentitycomponent と editentitycomponent の両方で使用する必要があります。

0 投票する
2 に答える
4116 参照

validation - Angular2:FormGroupのカスタムバリデータを作成するには?

でフォームを作成していてFormBuilder、 を に追加しValidatorたいformGroup。これが私のコードです:

特定の条件で、アドレスの formControls の一部にバリデーターを条件付きで追加したいと考えています。

そこでvalidator、次の方法でa を追加しました。

次に、アドレスのバリデーターの作成を開始しましたFormGroup

次の条件を追加する必要があります。

  1. すべてのフィールドが空の場合、フォームは有効です
  2. フィールドの 1 つが入力されている場合は、すべてのフィールドが必須である必要があります
  3. place(都市ではなく) 国のインスタンスである場合、postalcode はオプションです
  4. postalcodeが入力されている場合は、 その formControl に追加するzipValidator必要があります

では、Angular2ValidatorsFormGroup特定の条件で追加することは可能ですか? もしそうなら、私の条件を実装する方法は?別のバリデーターのソースコードでsetValidators()andを使用できますか?updateValueAndValidity()

0 投票する
3 に答える
9284 参照

angular - Angular 2フォームエラー:path.splitは関数ではありませんthis.myForm.get(i)

Angular 2 でネストされた動的フォームを作成しようとしています。

フォルムスケルトン


プログラムを動的に追加すると、次の関数で動作します:-


プログラムにチケットを追加するとエラーが発生します


.get(programme) では、path.split は関数ではないと言っています


PS - 「get(programme)」のプログラムは、動的チケットが追加されるプログラム フォーム配列のインデックスです。*ngFor から正しく取得されます。例: - 追加された最初のプログラムのインデックス 0。

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

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の例を使用してプランカーを作成しました。

私が間違ったことをしたアイデアはありますか?

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

angular - Angular 2マルチステップフォームプログレスバー

( http://plnkr.co/edit/M03tYgtfqNH09U4x5pHC?p=preview )に非常に似ているが、angular2を使用するフローを作成しようとしています。状態やデータを考慮していませんが、フローの準備はできていますが、プログレスバーにもっと興味があり、プログレスバーのどこから始めて、同じようにアプローチするかについて完全に迷っています。これについて何か助けていただければ幸いです。これは、私が持っているコンポーネントの基本的な概要です。これは静的であり、何もしません。

事前にどうもありがとうございました

0 投票する
2 に答える
1290 参照

forms - Angular2:バリデーターを追加して必須を除外する方法

ユーザーが入力したメールアドレスをチェックするカスタムバリデーターを作成しました。とにかく、電子メールフィールドは必須ではありませんが、バリデーターを追加すると、それも含まrequiredれます。

constructor私のコンポーネントクラスのフォームは次のとおりです。

電子メール フィールドは必須ではありませんが、ユーザーが入力しない場合、フォームは検証されません。同時に、ユーザーが入力すると、電子メールの検証が適用されます。

これが私の電子メールバリデータです:

空の文字列を受け入れるようにカスタム バリデータを編集できますが、これは問題を解決する正しい方法ではないと思います。

もっと良いアイデアはありますか?

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

angular - Angular2 で formBuilder を介してフォームを作成するときに formControl にアクセスする方法

以下のコードがあります

valueChangesofに登録したいのですtitleが、Cannot read property 'valueChanges' of undefinedエラーが発生します。

サブスクライブできthis.profileForm.valueChangesますが、タイトルが変更されたときに何らかのデバウンスと API 呼び出しを行いたいです。

あなたが持っていれば、そのFormControl変更を購読できるようですが、私はFormBuilder構文を使用しているため、にアクセスできませんFormControl