2017-09-12 16 views
1

私のアプリケーション(Angularjs - 1.6.3)にes6クラスを使ってサービスとコントローラを書きます。es6クラスのコンストラクタ引数リストを取得できますか?

私はいくつかのコードを単純化したいと思いますが、それが可能かどうか、またどのようにes6クラスのコンストラクタ引数リストを取得するか分かりません。

作品の例私は重複を防ぐために簡素化する必要があります。

class MyService { 

    constructor (
     $q, 
     $translate, 
    ) { 

     this.$q = $q; 
     this.$translate = $translate; 
    } 
} 

angular 
    .module('app') 
    .service('myService', MyService); 

は自動的に指定されたコンテキストに依存関係を追加する方法はありますか?

あなたは非構造と組み合わせるObject.assign使用することができangular2に(他の方法でか、彼らはこれを行う)現在のスコープでそれらを追加するために、依存関係を複製していないのに役立ちますデコレーターがあることを

+0

https://stackoverflow.com/questions/27619274/is-automatic-dependency-injection-available-in-angularjs –

答えて

0

を知っている:

class Service { 
    constructor($q, $translate) { 
     Object.assign(this, { $q, $translate }); 
    } 
} 

これはあなたが書いたコードに相当します。

+0

これが答えであれば、[this](https:///stackoverflow.com/questions/27529518/automatically-set-arguments-as-instance-properties-in-es6)?私はOPが "引数リストを得る"ことによって何を意味するのか分かりません。 – Bergi

関連する問題