角度过滤器注入使用中

时间:2015-04-16 15:56:13

标签: javascript angularjs typescript

我在同一个模块中有一个过滤器和一个服务:

app.filter( "etatTransfertEnumToStringFilter", [Filters.EtatTransfertEnumToStringFilter] );


app.service( "notificationService",
        ["$rootScope",
            // others dependencies
            "etatTransfertEnumToStringFilter",
            Services.NotificationService] );

过滤器运行良好,我可以从视图中调用他,但当我将其注入我的服务时(就像我上面所做的那样),我得到了Error: $injector:unpr Unknown Provider: etatTransfertEnumToStringFilterProvider <- etatTransfertEnumToStringFilter <- notificationService

我问自己过滤器是否在进样器中装好了,所以我列出了所有加载的控制器,服务和过滤器:

app._invokeQueue.forEach(function (x) {console.log(x[2][0]);});

我可以在列表中看到etatTransfertEnumToStringFilter,因此我无法了解正在发生的事情。

一个想法?

编辑:我的过滤器很简单:

module Filters {
    "use strict";

    export function EtatTransfertEnumToStringFilter() {
        return ( input: Metier.Model.EtatTransfertEnum ) => {
            return Metier.Model.EtatTransfertEnum[input];
        }
    }
}

1 个答案:

答案 0 :(得分:1)

要注入过滤器,您必须将单词Filter添加到过滤器的名称。因此,如果您的过滤器名为etatTransfertEnumToStringFilter,则可以使用etatTransfertEnumToStringFilterFilter注入它。