我正在使用this starter template以及this SO post中列出的修改。到目前爲止,它一直在順利航行 - 我試圖將服務注入到另一個服務的構造函數中,但注入的值始終是「未定義的」。沒有錯誤拋出。AngularJS和Typescript - 注入其他服務的服務未定義
下面是一個簡單的例子:
module app.services {
export class dashboardFilterService implements IService {
constructor($rootScope: ng.IRootScopeService) {
// $rootScope is undefined...
//$rootScope.$broadcast('FilterInitialized');
}
}
}
app.registerService('dashboardFilterService', ['$rootScope']);
注射服務到控制器正常工作。我對打字稿和角色都很陌生,所以對於有更多經驗的人來說,這可能是顯而易見的。下面是引用編譯JS:
var app;
(function (app) {
(function (services) {
var dashboardFilterService = (function() {
function dashboardFilterService($rootScope) {
// $rootScope is undefined...
//$rootScope.$broadcast('FilterInitialized');
}
return dashboardFilterService;
})();
services.dashboardFilterService = dashboardFilterService;
})(app.services || (app.services = {}));
var services = app.services;
})(app || (app = {}));
app.registerService('dashboardFilterService', ['$rootScope']);
這解決了這個問題 - 就像清潔和工作得很好。 – jdraper3