Javascript 我应该把AngularJS工厂和;服务?

Javascript 我应该把AngularJS工厂和;服务?,javascript,html,angularjs,Javascript,Html,Angularjs,我正在努力根据最佳实践清晰地构建我的AngularJS应用程序,包括将控制器和应用程序分离到不同的脚本文件中 快速问题:我应该把工厂和服务放在哪里?我是在这样一个背景下问的:工厂和服务将在单个控制器的范围之外访问,也有一些在单个控制器的范围之内。更新:下面的直接答案不再适用对的请参阅此答案的最新附录(2015年3月1日) 明白了!根据Brian Ford关于的文章,最佳实践似乎是在单独的文件中将服务和工厂连接到应用程序,如下所示: root-app-folder ├── index.html ├

我正在努力根据最佳实践清晰地构建我的AngularJS应用程序,包括将控制器和应用程序分离到不同的脚本文件中


快速问题:我应该把工厂和服务放在哪里?我是在这样一个背景下问的:工厂和服务将在单个控制器的范围之外访问,也有一些在单个控制器的范围之内。

更新:下面的直接答案不再适用对的请参阅此答案的最新附录(2015年3月1日)

明白了!根据Brian Ford关于的文章,最佳实践似乎是在单独的文件中将服务和工厂连接到应用程序,如下所示:

root-app-folder
├── index.html
├── scripts
│   ├── controllers
│   │   └── main.js
│   │   └── ...
│   ├── directives
│   │   └── myDirective.js
│   │   └── ...
│   ├── filters
│   │   └── myFilter.js
│   │   └── ...
│   ├── services
│   │   └── myService.js
│   │   └── ...
│   ├── vendor
│   │   ├── angular.js
│   │   ├── angular.min.js
│   │   ├── es5-shim.min.js
│   │   └── json3.min.js
│   └── app.js
├── styles
│   └── ...
└── views
    ├── main.html
    └── ...
(嘘!如果你想知道的话,布莱恩·福特是AngularJS团队的一员,所以他的回答似乎非常正确。)

新增(2013年4月24日)

这是一个非常棒的工具,用于为大型、功能强大的应用程序生成具有适当目录结构的应用程序。它甚至还有&包装

附录(2015年3月1日)

根据via的说法,谷歌实际上推荐了一种不同的结构,这一点在。结构应如下所示:

sampleapp/
    app.css
    app.js //top-level configuration, route def’ns for the app
    app-controller.js
    app-controller_test.js
    components/
        adminlogin/                                
            adminlogin.css //styles only used by this component
            adminlogin.js //optional file for module definition
            adminlogin-directive.js                         
            adminlogin-directive_test.js        
        private-export-filter/
            private-export-filter.js
            private-export-filter_test.js
        userlogin/
            somefilter.js
            somefilter_test.js
            userlogin.js
            userlogin.css                
            userlogin.html                
            userlogin-directive.js
            userlogin-directive_test.js
            userlogin-service.js
            userlogin-service_test.js                
    index.html
    subsection1/
        subsection1.js
        subsection1-controller.js
        subsection1-controller_test.js
        subsection1_test.js                         
        subsection1-1/                        
            subsection1-1.css
            subsection1-1.html
            subsection1-1.js
            subsection1-1-controller.js
            subsection1-1-controller_test.js
            subsection1-2/                        
    subsection2/
        subsection2.css
        subsection2.html
        subsection2.js
        subsection2-controller.js
        subsection2-controller_test.js
    subsection3/
        subsection3-1/
etc...

谷歌并不是这样记录的。我建议你遵循这个结构