为什么在angularjs中有两个模块

为什么在angularjs中有两个模块,angularjs,Angularjs,在Angularjs中,我们可以在应用程序中创建这两个模块。像这样的东西 var myApp = angular.module('myApp', []); var myApp2 = angular.module('myApp2', ['myApp']); 为什么我们需要在应用程序中创建两个模块? 我们不能把所有的东西都写在一个模块里吗? 两个模块是否仅用于代码清晰和易于理解? 任何其他用途?通常只有一个主模块将控制您的应用程序(您在ng app中指定的模块,与您指定依赖项的模块相同,在您的示例

在Angularjs中,我们可以在应用程序中创建这两个模块。像这样的东西

var myApp = angular.module('myApp', []);
var myApp2 = angular.module('myApp2', ['myApp']);
为什么我们需要在应用程序中创建两个模块? 我们不能把所有的东西都写在一个模块里吗? 两个模块是否仅用于代码清晰和易于理解?
任何其他用途?

通常只有一个主模块将控制您的应用程序(您在ng app中指定的模块,与您指定依赖项的模块相同,在您的示例中为
myApp2
)。虽然有两个模块可以控制您的应用程序,但这是罕见的,而且是我以前从未见过的

您添加的其他模块可以是:

  • 官方角度模块(如ngRoute)
  • 第三方模块(如ui路由器)
  • 您自己定制的模块

您可以创建自己的模块,将相关的代码块组合在一起,或者例如,在编写库时,比如说,处理数组。在后一个示例中,您可以将该模块复制到您的项目目录中,并将其作为主模块的依赖项添加,然后在将来的项目中重用该模块。

另一个主要原因是可移植性。很容易将一个模块从一个项目插入到另一个项目。您的意思是,它用于自定义模块。您可以使用库创建模块,并使用依赖项加载库、工厂、指令等。