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