2016-03-23 11 views
0

私は次の解決策を持っていますが、angular2のベストプラクティスは何ですか?Angular2のクラス(サービスではない)のインスタンスにサービスを挿入する方法は?

... 

class MultitonObject { 
    _http: Http; 

    constructor (appInjector: Injector) { 
     this._http = appInjector.get(Http); 
    } 
} 

var app = bootstrap(AppComponent, [HTTP_PROVIDERS, ...]); 

app.then(componentRef => { 
    var new_instance = new MultitonObject(componentRef.injector); 
}); 
+0

'MultitonObject'にサービスを提供できない、あるいはしたくない理由はありますか? –

+0

私はあなたが達成しようとしていることを正確に理解していませんか? –

+0

私の例はAngular2チュー​​トリアルに基づいています。 アプリケーションのさまざまな部分でヒーローを作成したいとします。 HeroインスタンスにHttpを注入してこのヒーローを保存したい場合もあります。 var hero =新しいヒーロー(name = "windstorm"); hero.setName( "Windstorm 2"); hero.save(); –

答えて

0

角度依存性注入は、自身が作成するクラスにのみ注入できます。 new MyClass()を使用してインスタンスを作成する場合、Angularは何もできません。

あなたの質問のコードはこのユースケースで問題ありません。

関連する問題