小编jdr*_*er3的帖子

AngularJS和Typescript - 注入其他服务的服务未定义

我正在使用此启动器模板以及此SO帖子中概述的修改.到目前为止一直顺利进行 - 我正在尝试将服务注入到另一个服务的构造函数中,但注入的值总是"未定义".没有抛出任何错误.

这是一个简化的例子:

module app.services {
    export class dashboardFilterService implements IService {
        constructor($rootScope: ng.IRootScopeService) {
            // $rootScope is undefined...
            //$rootScope.$broadcast('FilterInitialized');
        }
    }
}
app.registerService('dashboardFilterService', ['$rootScope']);
Run Code Online (Sandbox Code Playgroud)

将服务注入控制器工作正常.我对打字稿和角色都很陌生,所以对于有更多经验的人来说这可能是显而易见的.这是编译的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']);
Run Code Online (Sandbox Code Playgroud)

dependency-injection angularjs typescript

3
推荐指数
1
解决办法
8270
查看次数