注:これはこれは私のコード(廃止予定のフォームで角度2 RC2アプリ)であるhttps://stackoverflow.com/questions/38356330/how-to-use-pattern-validation-in-angular-2-based-on-ngmodel-template-model-drivAngular 2で単一フォームフィールドの有効性を取得するにはどうすればよいですか?
で私の他の質問としてない同じ質問です:
<form #myForm="ngForm">
<input id="inputControlX" ngControl="inputControlX" pattern="abcd">
{{inputControlX.valid}}
</form>
inputControlX は(正しく検証されます無効なクラスが入力に追加されます)。私は
{{inputControlX.valid}}
または
{{myForm.inputControlX.valid}}
または
{{ngForm.inputControlX.valid}}
を追加するとき は、しかし、私はエラーを取得しておいてください。は未定義の有効なプロパティを読み取ることができません。 一方(this answered questionのように)追加#inputControlX = "ngForm"、(でもngControlなし)、それは動作します
これはなぜ必要なのか?
答えてくれてありがとう。 wirh #tempvarがなぜ機能するのかを明確にしてください。その後、私は答えを受け入れるよ – dragonmnl
あなたは結びついた答えを言っているのですか? –
'#tempvar =" ngForm "' angleを使用すると内部的にフォームオブジェクトを作成し、ngModelディレクティブを持つそのフォームオブジェクトの中にすべてのフィールドを配置し、すべてのバリデーションプロパティを各フォームレベルオブジェクトで利用できます。 Angular1の[この回答](http://stackoverflow.com/a/28569650/2435473)を参照することもできます。基本的な基本は同じです –