角度NGModel検証


角度検証に関する我々の以前のシリーズは、グループとフォームのコントロールの検証フォームを議論した.それらを使用する負の側面は、immutability要件です.私たちのコードの中で2つの方法結合が現在必要であるという事実はよく、それは私の意見でばかげています.より多くのユーザーフレンドリーなオプション(NGModel)を見ましょう.
NGModel
 <select
    id="city"
    name="city"
    [ngModel]="address.city"
    #city="ngModel"
    [pattern]="onGetCity(city)"
 >
      <option>Select City</option>
      <option *ngFor="let city of address.cities">
         {{ city.name }}
      </option>
</select>

上のコードはアドレスのngmodelの使用を示しています.都市名.ID、名前、シティシティの属性は、角のテキストブックからまっすぐです.このパターンを使用して、妥当性検査を実行する準備ができている双方向結合があります!
[パターン]バインディングに注意してください.我々は、なぜ我々のHTML側の正規表現パターンが動作していない理由を見つけるために、これを置く.我々の驚くべきことに、我々は最終的に(偶然に)NGModel内部を開けました.
NGmodel構造
ngmodel == ' someをフックするとき.プロパティはどのようにNGModel作品の詳細について疑問がありますか?

ngmodelには
  • formcontrol
  • モデル
  • の分野
  • 更新eventエミッタ
  • valueaccessor
  • ビューモデル
  • その他の深いもの.
    NGModelが内部的に使用するときにフォームコントロールを使用する理由はありません.将来の記事では少し深く潜るよ.
    JWP NGModel NGModel