親の ngForm ステータスを最新の状態に保つのに問題があります。すべての子がクリーンアップされ、それら自体が「Pristine」に設定されている場合は、「Pristine」に設定する必要があります...しかし、それは自動的には起こらないようです。
問題をよりよく説明するために、ここにプランクを作成しました: http://plnkr.co/edit/vCX7ltOb8fgl3fkEpvzy?p=preview
<body ng-controller="MainCtrl">
<div ng-form="parentForm1" class="parent-form">
parentForm1.dirty: <b>{{parentForm1.$dirty}}</b>
<form name="childForm1" class="child-form" novalidate>
childForm1.dirty: <b>{{childForm1.$dirty}}</b>
<br/>
<input type="text" ng-model="field1">
<br/>
<button ng-click="reset1()">Clean and setPristine</button>
</form>
<form name="childForm2" class="child-form" novalidate>
childForm2.dirty: <b>{{childForm2.$dirty}}</b>
<br/>
<input type="text" ng-model="field2">
<br/>
<button ng-click="reset2()">Clean and setPristine</button>
</form>
</div>
</body>
どこが間違っていますか?外部モジュールを使用して解決策を見つけました...できるだけ少ないコードで解決したいと思います(おそらくディレクティブ?)。