3

私は angularJS アプリに取り組んでおり、AngularJs で最も効率的で広く受け入れられている開発スタイルに固執しようとしています。現在、次のようにサービスを宣言するこの方法を使用しています。

app.factory('MyService', function() {
  /* ... */
  function doSomething(){
     console.log('I just did something');

  }

  function iAmNotVisible(){
      console.log('I am not accessible from the outside');
  }
  /* ... */

  return{
     doSomething: doSomething
  };
});

しかし、そこには数多くの例があり、どのデザイン スタイルに従うべきかよくわかりません。サービスに関する幅広い知識を持つ人は、あるスタイルが他のスタイルよりも関連性が高い理由を説明できますか?

サービスの特定の機能へのアクセスを制限する以外に、私が行っていることは役に立ちますか?

4

3 に答える 3

0

受け入れられている標準があるとは思いませんが、私自身は次の規則に従います。

var myServiceFn = function (rootScope, http) { ... };
...
app.factory('MyService', ['$rootScope', '$http', myServiceFn]);

これは、関数をインラインで定義するよりもクリーンであり、ファイルを縮小することにした場合でも適切なインジェクションが可能になると思います。( http://docs.angularjs.org/tutorial/step_05を参照)。

于 2013-07-29T20:20:08.017 に答える