AngularJS,将服务注入控制器

时间:2015-11-30 22:19:40

标签: javascript angularjs dependency-injection

我刚开始使用angularJS并开始将我的main.js分成几个自己的文件。我的结构如下:

app.js

的index.html

/服务/服务1

/控制器/ CONT1

我的问题是如何将服务注入控制器。

应用程序:

angular.module('App',['ngDragDrop']);

服务:

angular.module('App')
   .factory('service1',function()
{...}

我尝试通过注入

将service1加载到cont1中
angular.module('App')
    .controller('cont1', cont1);

cont1.$inject=['$scope', 'service1']; 

function cont1($scope, service1) {
    $scope.we=service1.doSomething(); 
}

但它从未奏效。

最后我将service1的脚本添加到我的index.html文件中,就在我加载控制器文件之前它运行正常。

我是否必须将我想要在我的应用中使用的每项服务添加到索引文件中?没有其他办法吗?对我来说,如果我的index.html中有大量的脚本标签,那么它似乎有点蠢。

Greetz并提前致谢!

1 个答案:

答案 0 :(得分:0)

是的,您的index.html将包含所有脚本引用。您可以获得想象力并创建一个任务,将所有js文件缩小并组合成一个,然后只引用一个文件。出于调试目的,您希望能够访问所有js文件,以防您需要设置断点和调试