在angularjs中我们为什么在angular.module()函数中使用[]?

时间:2015-09-24 09:57:41

标签: javascript jquery angularjs

var myapp=angular.module('myAppln',[]);

我是angularjs的新手。我们为什么要在angular.module()中使用[]?请有人解释一下。

3 个答案:

答案 0 :(得分:2)

这用于注入依赖项。依赖注入或DI是一种软件设计模式,其中组件被赋予其依赖性,而不是在组件内对它们进行硬编码。这也有助于使依赖性可配置并使组件可恢复和可维护性。

服务等组件指令是使用可注射工厂定义的 例如,当在angularjs中定义服务时,我们会这样做

var abc = angular.module('ngAppName',[]);
    abc.factory('serviceName',['$http',function($http){
    // Rest of code goes here
    }])

angular.module(' ngAppName',[]) 角度应用和/或它的或多或少的切入点。这里我们没有任何依赖,所以这是一个空数组。

但是看看我们定义我们的自定义服务。这个服务依赖于$ http,这是由angular为ajax调用提供的预定义服务。我们的自定义服务(serviceName)依赖于这个$ http,我们是注入这里

角度路线的另一个例子

abc.config(['$routeProvider',function($routeProvider){
      // Rest of code goes her
    }])

$ routeProvider是创建$ route服务的东西,由angularjs提供。在创建路线时,我们必须依赖$ routeProvider。所以我们已经注入了我们的代码。

希望这会对你有所帮助。

答案 1 :(得分:0)

如果你在Angular.js中更进一步,你会发现你可以将注射器和其他东西传递给模块。所以这里api返回的方式是它接收了一系列选项。当你没有任何东西时,你只需将它传递给空白[]

答案 2 :(得分:0)

实际上[]是一个包含模块所需依赖项的数组。