Javascript AngularJS,将服务注入控制器

Javascript AngularJS,将服务注入控制器,javascript,angularjs,dependency-injection,Javascript,Angularjs,Dependency Injection,我刚开始使用angularJS,并开始将main.js划分为几个自己的文件。我的结构如下: app.js index.html /服务/服务1 /控制器/控制1 我的问题是如何将服务注入控制器 应用程序: angular.module('App',['ngDragDrop']); 服务: angular.module('App') .factory('service1',function() {...} 我试图通过注入将service1加载到cont1中 angular.module(

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

app.js

index.html

/服务/服务1

/控制器/控制1

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

应用程序:

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中有大量的脚本标记,那么它似乎有点愚蠢


提前谢谢你

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

如果不包含脚本,浏览器将无法获取它,所以是的,这是一项要求。通常,人们会将JS连接到一个大文件或多个文件中,以最小化所需的包含数量和所需的往返次数。像咕噜声或咕噜声这样的任务跑步者在这方面帮助很大。是的,我忘记了缩小。谢谢你指出!我只是想确保我没有在角度上观察到一些基本的东西,但当这是一条路的时候,我很好。很明显,我必须加载脚本,只是有喜欢(太多)脚本标签的想法吓了我一跳。当我完成开发时,缩小解决了这个问题