私はディレクティブを使用して部分的なフォームをカプセル化しています。モデル値を指示文に渡す囲み形式があります。ここでは基本的なレイアウトです:ディレクティブのAngularJSクライアント側の検証
<form name="userForm" class="form-horizontal" ng-submit="vm.onSubmitForm(userForm.$valid)" novalidate>
<fieldset>
<legend>Account</legend>
<div class="form-group" control-validator="" validator-condition="vm.hasTriedToSubmit">
<label class="col-md-2 control-label">Email (username):</label>
<div class="col-md-10">
<input class="form-control" type="email"
id="email" name="email"
placeholder="Email"
required
ng-model="vm.formData.email">
<control-validator-message>Email is required.</control-validator-message>
</div>
</div>
<!-- some other fields -->
<div ng-if="vm.isUserChecked()">
<!-- directive which is rendered conditionally -->
<dt-user user="vm.user" display-name-fields="false"></dt-user>
</div>
</fieldset>
だから、アイデアは、ユーザの指示がレンダリングされている場合、そのフィールドのいくつかが必要とされるということです。これは実際には機能しますが、検証メッセージが表示されず、必要なフィールドにエラーCSSが適用されません。私は、必要な指示フィールドが存在しない場合、フォームの通常の部分のフィールドにメッセージとエラーCSSを表示している場合、フォームの送信を停止していますが、指示に含まれているものは不運です。基本的には、検証の引き金を引くためにディレクティブから囲むフォームに信号を送る方法が必要です。