私は、コントローラとアプリケーションを別のスクリプトファイルに分けることを含むベストプラクティスに従って、AngularJSアプリをきれいに構築するよう努めています。AngularJSの工場とサービスはどこに置くべきですか?
簡単な質問:どこに工場やサービスを置くべきですか?私は、単一のコントローラの範囲外でアクセスされるサービスと、単一のコントローラのスコープ内にあるサービスの一部を持つことになるファクトリ&サービスを持つというコンテキストで尋ねています。
私は、コントローラとアプリケーションを別のスクリプトファイルに分けることを含むベストプラクティスに従って、AngularJSアプリをきれいに構築するよう努めています。AngularJSの工場とサービスはどこに置くべきですか?
簡単な質問:どこに工場やサービスを置くべきですか?私は、単一のコントローラの範囲外でアクセスされるサービスと、単一のコントローラのスコープ内にあるサービスの一部を持つことになるファクトリ&サービスを持つというコンテキストで尋ねています。
更新:下記の即時回答は間違いです。この回答には、最新の補遺(2015年3月1日書面)をご覧ください。
ありがとうございました! Building Huuuuuuuge Angular Appsのブライアン・フォードの記事によると、ベストプラクティスはそうのように、別のファイルにアプリへのサービスや工場を接続するように表示されます。
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
└── ...
(PSSTは、ケースであなたはブライアン・フォードがあり、迷っています! 。AngularJSチームの一員、彼の答えはかなり合法的と思われるので)
追加(2013年4月24日)
これだけでは:適切なディレクトリにアプリケーションを作成するための素晴らしいツールですYeoman大きくて機能的な角型アプリの構造。それもありますGrunt & Bowerが入っています! this documentで説明するようPaoloCargnin経由a commentによると
補遺(2015年3月1日)
は、Googleが実際に、異なる構造を推奨しています。構造は次のようになります。
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...
これはGoogleの文書化方法ではありません。この構造に従うことをお勧めします。https://docs.google.com/document/d/1XXMvReO8-Awi1EZXAXS4PzDzdNvV6pGcuaF4Q9821Es/pub – PaoloCargnin