2016-07-03 18 views
3

私はチュートリアルとドキュメントを探しています。しかし、私は以下のコードを理解していない。 2つのファイルから2つのコードがあります。サービス;ファイルをインポートします。角度1.5メソッド。エクスポート角モジュール内

このサービス角度ファイル(アドレスlocal.js)の一片のコードである:

export default angular.module('erp.services.addressLocal', []) 
     .factory('addressLocal', addressLocal) 
     .name; 


    /* @ngInject */ 
    function addressLocal($http) { 

、これはサービス(account.js)を注入されたファイルのコードの一部である:

import addressLocalService from '../services/address-local'; 

、私の質問は:

輸出.nameの方法を何
  • 。ウェブ上で見たほとんどの例では、.nameメソッドを使用しないでください。

  • エクスポートでは 'erp.services.addressLocal'を使用します。インポートが使用されていない場合は、 'import addressLocalService';完全なドキュメント構文は何ですか?

  • /* @ngInject * /が便利ですか?

「名前」に関する完全なドキュメントや、「エクスポート」で使用できるすべての記事を見つけることができますか? ES6とAngularが混在していますか?

答えて

8

はのはラインを一つずつ見てみましょう:

angular.module('erp.services.addressLocal', []) 

これは'erp.services.addressLocal'という名前の新しい角度モジュールを定義します。名前は何でもかまいません。モジュールは、コンポーネント(サービス、コントローラなど)の単なるリポジトリです。返される値は、作成された角度モジュールです。

.factory('addressLocal', addressLocal) 

角型モジュールに'addressLocal'という名前のサービスが追加されます。このサービスは、ファクトリ関数addressLocalの定義の直後に定義されています。これは、角モジュールを返します。

.name 

これにより、モジュールの名前にアクセスできます。この値(つまり 'erp.services.addressLocal')は、このファイルで定義されているES6モジュールによってエクスポートされたものです。

/* @ngInject */ 
function addressLocal($http) { 

これは、addressLocalサービスを作成して返すファクトリ関数です。これは、注入された$ httpサービスを使用します。 @ngInjectは、ビルド時に使用するツールによって使用されるNG-注釈の名前、あなたのコードを縮小化場合minifierは何かに$httpを変更しますので、この奇妙な表記は、必要である

['$http', function($http)] 

に上記のコードを変換することができますされています意味がなく、より短く、aのように、angleは何を注入するかを知る引数名を使用します。

import addressLocalService from '../services/address-local'; 

これにより、細かいaddress-local.js(モジュール名)からのエクスポートをインポートできます。私はこの行の後のコードが何をしているのか分かりません。しかし、addressLocalServiceはaddressLocalServiceではなく、最初のファイルで定義されているモジュールの名前であるため、変数名の名前は間違っています。

+0

あなたの良い説明のためのJBに感謝します...あなたのために正しい線がありますか? – stackdave

+0

目的がモジュールの名前を得ることであるなら、あなたが持っている行は正しいです。それは、より良い名前を付けるべき変数(addressLocalService)です。コードはこの変数で何をしますか? –

+0

これは別のフォームコンポーネントにインポートされたもので、APIの残りのレコードを取得するために別の名前を使用できます。どのように私は 'erp.services.addressLocal'デフォルト名を使用することができますか?メソッド.nameは本当に便利ですか? – stackdave

関連する問題