禁用表单验证

Roy*_*ove 11 angularjs

Angularjs通过FormController(例如跟踪原始,脏等)运行我的表格.我不需要这个功能; 我确定这会增加我的开销$digests.

我怎么能把它关掉?

pko*_*rce 9

AFAIK没有简单的开关来关闭AngularJS验证.实际上大多数验证都发生在NgModelController和输入指令中 - 基本上是在input.js文件中的代码.因此,要摆脱内置验证,您必须从该文件重新开发代码(加上其他一些代码,如select).

您是否将验证码识别为应用程序中的性能瓶颈?

  • @RoyTruelove:我想没有太多人*知道*它可以利用它.那就是说:[打电话给母亲并让它更好!](https://github.com/angular/angular.js/)...然后提交拉取请求. (2认同)

Jus*_*oel 9

更新:这不起作用......至少不是你想要的方式.将ng-non-bindable添加到表单或任何输入会中断ALL绑定.因此,输入中的ng模型将不再起作用.抱歉....

ng-non-bindable是这个问题的解决方案.

它将阻止AngularJS将表单视为指令.这将使AngularJS忽略整个表单:

<form name="inviteContactForm" ng-non-bindable>
Run Code Online (Sandbox Code Playgroud)

这将使AngularJS忽略表单的一部分:

<input type="email" name="email" ng-non-bindable>
Run Code Online (Sandbox Code Playgroud)

你可以在这里读一下我对这个问题的抱怨.http://calendee.com/preventing-angularjs-from-hijacking-forms/