angularjs中的controller.js 要不要分开成多个js文件

 我来答
xiangjuan314
推荐于2017-10-06 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2890万
展开全部
拆分代码一般对可维护性是有好处的,但要注意这些事情:

从理念上讲,拆的是逻辑而不是文件,如果你把逻辑拆分理清了,拆不拆文件的重要性并不大。如果对可维护性的提升是100%,逻辑的部分至少要占90%。
写Angular应用,最重要的事情是分层。很多人写不好Angular代码,原因就是没有分层的观念,所以症状就是controller又大又乱。简单的原则是:
远程请求,数据缓存等等一律放进service
不得以而产生的DOM操作,一律放进directive(在Angular应用里,需要你手动去操作DOM的场景其实很少了)
数据的格式化,一律做成filter
剩下的东西才是controller应该做的事情,在这里,又有一些事情要考虑:
视图是需要分块、分层的,如果你控制能力不足,最好把controller和视图块按照一对一的关系维护,每块单独都能跑,然后拼起来
嵌套的视图,作用域的关系需要好好考虑,这部分的相关机制可以参考我写的这篇:AngularJS实例教程(二)——作用域与事件
有一些东西并不应当在视图分块(姑且称为组件)的树状结构里,而是独立在外,跟这部分东西的交互,应当视情况使用service来通信,不要尝试在$scope体系上过多纠缠。
平行宇宙网络科技
2016-08-11 · 超过17用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:32.8万
展开全部
依赖的service ,directive,filter要单独写,最后在引入到controller.js。这就相当于把controller拆开了,本质上service ,directive,filter可以写到controller里面,但是太乱不好维护和阅读
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
861622836
2016-05-05 · 超过20用户采纳过TA的回答
知道答主
回答量:66
采纳率:100%
帮助的人:50.4万
展开全部
在开发的时候最好可以分开,这样可以方便管理,上线代码的时候可以打包为一个js,可以减少http的数量,加快网站的载入速度
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2016-04-15
展开全部
可以的。

//app.js

angular.module('MyModule', ['SubModule1', 'SubModule2'])
.module('SubModule1', ['CommonModule'])
.module('SubModule2', ['CommonModule'])

//sub1.js

angular.module('SubModule1')
.controler(...)
.factory(...)

//sub2.js

angular.module('SubModule1')
.controler(...)

//common.js

angular.module('CommonModule')
.factory(...)
.service(...)
.filter(...)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我叫做啊
2016-04-24
知道答主
回答量:9
采纳率:0%
帮助的人:1.1万
展开全部
分不分开写完全是看个人需要,对网页本身是没什么影响的,如果你觉得把很多个controller写在一起觉得太长了,你也可以分开,如果你网站有两个模块,你也可以把两个模块的controller写在两个文件里面,主要是方便自己调试或者维护的时候容易找到对应的代码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式