0

私は、Typescriptクラスとしてファクトリを作成し、必要に応じてnew FactoryName()でインスタンス化しています。注入コンストラクタを汚染することなく、Typescriptクラスへの角度依存の工場依存性を注入しますか?

.factory('FactoryName', function() { return FactoryName; })これは工場で働いていますが、それは素晴らしいですが、今は、私がTypescriptの外で作った別のファクトリをコンストラクタ呼び出しを汚染することなく注入する必要があります。それは可能ですか?

答えて

0

私は回避策が見つかりました:

export function FactoryName(injectedService1, injectedService2) { 
    return class FactoryClass { 
    constructor() { 
     let test = injectedService1.testFunction(); 
    } 
    } 
} 

app.factory('FactoryName', FactoryName) 
0

それは無名関数が$inject注釈とうまく再生されないので、配列の注釈がより良いケースに合っ

app.factory('FactoryName', ['...', (...deps) => new FactoryName(...deps)]); 

です。