2017-08-21 6 views
1

この質問は申し訳ありません。これは、フォームに書いている間にnull、空の文字列を拒否する私の子コンポーネントの1つと関係しています。Angular2 setValueを使用して値をnullにリセットするフォーム

私はフォームコントロールorderNoを持っています。 しようとすると
this.myForm.controls['orderNo'].setValue = '123';
これはうまく動作し、私のビューはこの値で更新されます。
問題は、nullまたは空の文字列でコントロールを設定できないことです。私は
this.myForm.controls['orderNo'].setValue = null;
または
this.myForm.controls['orderNo'].setValue = '';
を行うたびに、それは私のビューには反映されません。 しかし、フォームコントロールがnull値を保持しているのがわかりました。 (ng.probe($ 0).componentInstance.myForm.controls ['orderNo']。valueはnullを返します)。 これは単にビューに反映されていません。

私はいくつかの考えで私を助けてください。ありがとうございました。

+0

の値を設定するためにpatchValueを使用することができ、フォームのコードや図を示してもらえますか? – BenRacicot

+1

コメントありがとうございます。今すぐ実現しましたが、これはangular2 formcontrolとは関係ありません。私はすべてのコントロールの値を設定する子コンポーネントを持っています。また、そのWritValue()メソッドでは、条件があります。if(value){this.value = value; }。それは私のnullと空の文字列を拒否していた。 – Josf

答えて

1

あなたは直接うんそれは奇妙なフォームフィールド

this.myForm.patchValue({'orderNo':null}) 
関連する問題