【发布时间】:2017-02-10 10:50:42
【问题描述】:
我正在尝试在 Angular 1.5 的组件中使用表单
我的表单可以正常工作,因为我有模型绑定并且可以在提交时获取数据。所以我已经达到了 90% 的目标,缺少的是能够使用 $setPristine 正确重置表单。
我尝试了几种方法,第一种方法是将表单作为参数传递给重置函数。
form.html
<form name="$ctrl.userForm">
...
<input class="btn btn-default" type="button" ng-click="$ctrl.reset($ctrl.userForm)" value="Reset" />
</form>
form.component.js
ctrl.reset = function(userForm) {
ctrl.user = {};
userForm.$setPristine // Cannot read property '$setPristine' of undefined
};
我还尝试将 $ctrl.userForm 声明为空对象 $onInit,但这似乎也不起作用。移除 $setPristine 行后,reset 可以清除表单数据,但不是从角度看它的状态。
关于我缺少什么的任何想法?
【问题讨论】:
标签: javascript angularjs forms