angular js:将一个大型控制器拆分为多个文件
angular js: splitting up a large controller into multiple files
我有一个控制器越来越大。。主要是因为我需要做所有的输入验证。我想做的是将所有的验证函数拆分成一个单独的"部分控制器"。
通常情况下,我只会创建一个服务,并将所有功能转移到那里(我仍然可以这样做)。我遇到的唯一问题是:验证函数偶尔需要了解范围。例如,当我进行交叉验证时。我不确定是否要将作用域传递给服务。
解决这个问题的最佳方法是什么?使用服务
.service("validation-service", function() {
return {
populate: function($scope) { //return validator functions }
};
});
或者,有没有办法将控制器分为两个文件?像这样的
文件1
.partialController("myController", function($scope) { /*do normal stuff here*/ });
文件2
.partialController("myController", function($scope) { /*do validations here*/ });
我必须同意Jeff指令将更加有用,并且如果您将其分解为基本功能,则可能会重复使用。
例如,您可以构建一个密码确认指令或一个语义不同的指令来检查相等性。
看看这个平等指令,它应该会有所帮助:http://plnkr.co/edit/bTFMzV70vjOzwhimVtQL?p=info
对于Fiddle中的例子,你可以这样做:(尽管我相信你的Fiddle是一个简化的例子)
<input name='start' type="number" ng-model="model.start" max="{{model.end}}"/>
<input name='end' type="number" ng-model="model.end" min="{{model.start}}"/>
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 在jstree中,如何将指定的节点集中到大型树上
- 从控制器返回后Ajax启动事件激发
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- 如何在单击复选框后调用控制器方法
- 在控制器和数据对象之间同步数据
- 将Javascript数组发送到控制器ASP.NET MVC
- 以块形式呈现大型HTML表
- 角度控制器结构
- 如何在Jquery中发布后将值从视图返回到控制器
- 将值从html传递到AngularJS控制器
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- 从控制器继承了隔离的作用域以生成可重用的指令
- Flash Uploadify在调用我的MVC控制器时没有保留会话/授权
- 为什么不't我的变量在我的控制器中填充后在我的视图中呈现
- angular js:将一个大型控制器拆分为多个文件
- 性能方面:拥有许多小型 ajax php 控制器脚本还是一个大型脚本更好
- 如何将大型变量数据从javascript发送到SpringMVC控制器
- 检索要在多个控制器之间共享的大型数据集