angularjs – 如何从嵌套表单访问$error

前端之家收集整理的这篇文章主要介绍了angularjs – 如何从嵌套表单访问$error前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个主要形式和另一个子形式.我如何访问子表单的$error但不必直接引用subForm名称

我希望能够显示名称是必需的(例如),而不仅仅是知道表单的名称.

这是我的问题的演示:http://plnkr.co/edit/QWZArI1UFPpJdjoK8eVn?p=preview

解决方法

好吧,我不是100%肯定我理解你的问题,但我想我知道,所以这里有一个刺:

有几种方法可以访问子表单的错误,但似乎都需要ngForm的名称.

假设这个结构:

<form name="parentForm">
  <ng-form name="childForm"></ng-form>
</form>

你知道你可以通过$scope.childForm.$error访问它,但鲜为人知的是它也附加到父表单.您可以使用$scope.parentForm.childForm.$error访问它,但显然,这并不好,因为您仍然需要该名称.

你可以得到hacky并遍历父窗体上的属性,并尝试告诉哪一个是子窗体并从那里开始.

最后,正如我们在Twitter / GitHub上讨论的那样,我有一个指令,它有点为你做了一些魔术.它确实有一个错误,没有正确处理嵌入的表单,但我修复了它.查看我的指令的新版本,该版本尝试使用Angular简化处理错误

https://github.com/CWSpear/angular-form-errors-directive

添加了在v1.3.0中显示带有标志的所有子ngForms的所有错误功能.

猜你在找的Angularjs相关文章