2016-05-05 5 views
1

子コンポーネント(カスタム入力)がロードされたときに正しく更新されるようにしようとしました。Angular2.RC1子コンポーネントを読み込むときに更新する方法は?

私はこの答えに基づいています:https://stackoverflow.com/a/34814189/386619 入力が提供されても動作しますが、ロードされたときに正しく表示されることはありません。

私が見たい動作は次のとおりです。
空の電子メールアドレスプロパティを持つコンポーネントと子コンポーネントのロード、および子コンポーネントはPlease enter a valid email address.というメッセージで<div>を表示します。それから私は有効な入力をタイプし、それは遠ざかります。私がそれを削除する(または無効な入力を提供する)場合、それは返されます(その部分は今働きます)。 (@Thierry Templierのオリジナルhere由来)

マイplunk: https://plnkr.co/edit/tvQhuvnN4iP2sz0wbzso?p=preview

それはおそらく簡単なものだが、私はそれが欠けています。私はTS/JS/NG2/HTMLも新しくなっていますので、これは簡単な答えです。

私はAngular2.RC1を使用しています。

答えて

2

簡単な答えは、デフォルト状態を無効に設定するために、子コンポーネントのngOnInit()またはconstructor()にthis.inputInvalid = trueを追加することです。

+1

私はこれを試みましたが、うまくいきませんでしたが、初めて試みたときには、おそらく他のことが間違っていました。 – Jay

+0

また、独自のフラグ/ロジックを持たずに、フレームワークのFormBuilder検証メカニズムを使用することもできます。https://github.com/daviddt/angular2-form-validation-example/blob/master/src/app/app.ts –

関連する問題