一个AngularJS文件中有多少个控制器(服务,工厂,指令)

时间:2015-06-24 14:08:08

标签: javascript angularjs

我的AngularJS应用程序正在增长,我们在一个文件中有超过一百个控制器,服务和指令。行数接近25,000,我想知道我是否接近某个限制(Angular,JavaScript或其他)。我呢?

3 个答案:

答案 0 :(得分:2)

您应该为每个文件做一件事(一个控制器,一个服务,一个模块),并将文件结构化为有组织的文件夹结构,以便轻松找到代码(并使用IIFE分隔范围S)。我建议您阅读a style guidearticle on the topic

应用程序中可能存在的控制器,服务等的总量仅受RAM的限制。性能不应受到影响,因为搜索要注入的控制器/服务是O(n),如果不是更好(它只是每次注入/实例化时发生一次的简单查找)。

答案 1 :(得分:1)

可能没有线路限制,但我可以想象你的文件疯狂混乱,几乎无法读取。 您应该考虑将1个文件分成几个文件,例如1个文件用于控制器(或者如果您有明确的控制器分组,将控制器分成几个文件)和1个文件用于您的服务等。您可以创建服务和控制器的新模块,然后将其注入主模块。

巨大的优势:您的代码更易于维护和理解,并且更容易跟踪错误和错误,而不必滚动25k行代码。

此外,如果您由于某种原因将项目传递给其他人,他/她将能够阅读您的项目,并且实际上能够调整/扩展它,而无需花费数周的时间来计算整个项目。

想象一下1可以访问您的文件并替换所有的&#39 ;;'与希腊问号,看起来非常相似。如果您的所有代码都在1个文件中,请好好搞清楚!

答案 2 :(得分:0)

单个文件中包含超过100个控制器/服务/指令的25,000行不会很好。考虑将应用程序分解为各种文件夹(控制器,服务,指令,视图等),并尝试尽可能少地保存每个文件的代码。理想情况下,开发时每个文件有1个服务/控制器!在开发时,你如何处理单个文件中的那么多代码?在链接到index / html文件时,您可以使用Gulp / Grunt连接和缩小所有内容。