Angular-styleguide: コントローラーもビューも持たないサービスをどこに配置しますか?

作成日 2016年03月22日  ·  3コメント  ·  ソース: johnpapa/angular-styleguide

例:StatesServiceがあります。 国のすべての州を返しますが、独自のビューはありません。

  1. 1つのビューでのみ使用されている場合、そのビューのサブフォルダーに配置する必要がありますか?
  2. 多くのビューで使用されている場合、どこに配置すればよいですか?

「Folder-by-feature」 https://github.com/johnpapa/angular-styleguide/tree/master/a1#folders-by-feature-structureでは、「services」フォルダーは表示されますが、下の画像では表示されません。 。

今のところ、私は「余分な」フォルダーを使用して、コントローラーやビューのないサービスを配置しています。

@johnpapa

最も参考になるコメント

サービスは1つのビューに関連するのではなく、アプリに提供するのに役立つサービスまたは一連のアクションに関連します。 したがって、シナリオは非常に一般的です。 あなたはすでに半分以上そこにいます:)

まず、サービスが必要かどうかを判断します。 あなたはすでにそれが状態を処理することを決定することでそれをしました。

次に、そのロジックを抽出する方法を決定します。 あなたもそうしました!

次に、誰がそれを必要とするかを決定します。 1台のコントローラーで使用されていますか? 1サービス? 1ディレクティブ? それらはすべて1つの機能/モジュールに含まれていますか? 1つのモジュールで使用する場合は、そのモジュールに入れます。 アプリ全体で使用する場合は、共有モジュールに配置します。

幸運を

全てのコメント3件

  1. そのとおりです
  2. コアサービスファイルcore.service.jsに入れる必要があります

すべての一般的なサービスを格納するservicesディレクトリがあります。

個人的には、「コアサービス」ファイルには入れません。1のルール(Y001)に違反しているように見えるからです。

サービスは1つのビューに関連するのではなく、アプリに提供するのに役立つサービスまたは一連のアクションに関連します。 したがって、シナリオは非常に一般的です。 あなたはすでに半分以上そこにいます:)

まず、サービスが必要かどうかを判断します。 あなたはすでにそれが状態を処理することを決定することでそれをしました。

次に、そのロジックを抽出する方法を決定します。 あなたもそうしました!

次に、誰がそれを必要とするかを決定します。 1台のコントローラーで使用されていますか? 1サービス? 1ディレクティブ? それらはすべて1つの機能/モジュールに含まれていますか? 1つのモジュールで使用する場合は、そのモジュールに入れます。 アプリ全体で使用する場合は、共有モジュールに配置します。

幸運を

このページは役に立ちましたか?
0 / 5 - 0 評価