2016-03-18 12 views
0

私は2つの子コンポーネントを持っています。 1人の子供が入力フィールドを持っています。入力フィールドが空の場合、他の子は非表示にする必要があります。ここにはPlunkerがあります。角2入力フィールドの変更で非表示の指示が更新されない

(keyup.enter)を入力して入力フィールドの値をクリアすると、非表示にする必要があるコンポーネントは表示されません。

入力欄に入力欄に単語を入力してみてください。その後、それを消去します。隠しコンポーネントが機能します。

単語で入力してから、enterを押してください。入力フィールドは空ですが、非表示のコンポーネントは表示されません。

私は間違っていますか?隠されたディレクティブの条件は、入力フィールドの値に基づいていますが、私は入力フィールドの変更はDOMを更新しないと思いますか?

答えて

2

理由入力を押したときにデータを送信しません!

Your working plunker

<input type="text" (keyup)="0" #input (keyup.enter)="itemInput.emit('')" [(ngModel)]="input.value" (ngModelChange)="itemInput.emit(input)"> 
+0

あなたはngModelに結合2ウェイデータを持っているときにngModelChangeを必要とする理由私が興味? – Jarvis

+0

ngModelChangeは、たとえば何かしたいときに使用できます。モデルの値が変更されたときに関数を呼び出す。 @ジャービスここで私はモデルの値が変更されたときにデータを発信しています。 – micronyks

+0

共有ありがとう!私は現在、フォームにサードパーティのものを使って値を設定することに問題がありますが、私のモデルは更新されていないので、それを把握しようとしています。私のカスタムコンポーネントをフォームで正しく動作させる方法を理解するためにちょっと考えました:-P – Jarvis

関連する問題