我将自定义指令与自定义验证器结合使用。我遇到的问题是myForm。$ valid在失效之前会在短时间内成立。
<form name="myForm">
<!--If min-size="2" is added here, you don't see the Valid flashed-->
<!-- I guess this is because no directive is used? -->
<div name="testlist1" ng-model="data.testlist1"></div>
<div testlist name="testlist2" ng-model="data.testlist2" min-size="3"></div>
<div ng-if="myForm.testlist2.$valid">
This is not flashed!
</div>
<div ng-if="myForm.$valid">
This is flashed for a short time when loading!
</div>
</form>
**data.testlist1 and data.testlist2 ara both empty arrays
这里有完整的例子: https://plnkr.co/edit/MLILBxtqzA1x0IoPBZQb?p=preview
有人知道为什么会这样吗?以及如何解决这个问题?
编辑: 我在angularjs网站上找到了这个笔记。
请注意,包含templateUrl指令的子元素将不会被编译和链接,因为它们正在等待其模板异步加载,并且它们自己的编译和链接已暂停,直到发生这种情况。
我猜这是原因?但有没有办法解决它?