我有一些初始化表单的代码(相当复杂的初始化)。我希望在首次显示表单时调用它,但我必须做这样的事情:
if($scope.callForm) {
$scope.callForm.$setPristine();
}
因为在初始化控制器时,角度还没有到创建名为callForm的ng-form。我的所有其余初始化完成后,我添加了$ setPristine(),以便在用户单击新建按钮时重置它。它在启动时实际上并不需要,因为表格会出现原始状态
上面的代码可以工作,但有一些承诺我可以等待进行初始化,所以在我的控制器代码执行初始化之前,angular已经实例化了所有的DOM东西吗?只是试着为其他竞争条件保持领先。 Angular 1.2.9
答案 0 :(得分:1)
你可以使用ng-init =“someFunctionSettingPristingState()”并将它放在表单标签上,所以只有当angularjs开始初始化表单时才会调用它...
我还没有测试过它。