私は AngularJS を評価していますが、これまでのところ非常に熱心です。しかし、バリデーションの前に何かが欠けています:組み込みメカニズムやAngularUI イニシアチブなどの利用可能なオプションは、ディレクティブを介してバリデーターを実装するため、すべてのバリデーションをビューで宣言する必要があります。
<form ng-controller="SomeController">
<!-- Notice the 'required' attribute directive below: -->
<input type="text" ng-model="user.name" name="uName" required />
</form>
この例では、ビューはそれuser.name
が必要であることを定義しています。ビューがモデルの適切な形状を定義すると言っているようなものです。ちょっと後ろ向きじゃない?ビューは、エラー状態を含む状態を反映するべきではありませんか?
私は間違っていますか?controllerにバリデーターを適用し、モデルのデータを有効/無効として通知し、それに応じてビューを更新できるかどうか疑問に思っています(フォームコントロールを赤で塗りつぶし、エラーメッセージを表示し、以前のエラーをクリアするなど)。AngularJS はこれに対して十分に強力であると想定していますが、これまでのドキュメントとサンプルでは、上記のようなものは見たことがありません。ありがとう!