ile bir AngularJS hizmetinde bağımlılık enjeksiyonu için en iyi uygulama TipScript'te AngularJS hizmetleri için bağımlılık enjeksiyonu biraz hantal olmaktır. Şu anda, benim hizmet sınıfının içinde bir fabrika yöntemini tanımlar ve tüm bağımlılık enjeksiyon argümanları tekrarlamak zorunda üç kez:TypeScript
class MyService {
public static Factory($rootScope, myController) { // 1st time
return new MyService($rootScope, myController); // 2nd time
}
constructor(public $rootScope, public myController) {} // 3rd time
}
myModule.factory('myService', MyService.Factory);
ben aşağıdakileri yapmak istiyorsunuz, ama bu işe görünmüyor:
class MyService {
constructor(public $rootScope, public myController) {} // only once
}
myModule.factory('myService', MyService);
Bu yaklaşım, denetleyiciler için iyi çalışır, ancak hizmetler için geçerli değildir. Daha iyi bir yolu var mı?
Şimdiden teşekkürler!
unutmayın 'myModule.service ('myService', MyService); ' * sınıf bildiriminden sonra * gitmeli. Önceden yerleştirmek, kod derlemesini yapar ancak çalışma zamanında hatalara neden olur (undefined üzerinde prototip erişimi gibi bir şey). –