在过滤器函数中注入依赖项

Naf*_*Kay 2 angularjs angularjs-filter

我正在编写一个自定义过滤器,它依赖于一个名为的常量对象config.这是我到目前为止所得到的:

angular.module('myproject.filters', []).filter('userLink', function () {
    return function (user) {
        return '';
    };
});
Run Code Online (Sandbox Code Playgroud)

我需要将' config'模块注入我的过滤器中,这样我就可以从中提取静态值来构建指向用户对象的链接.

如何将依赖项注入过滤器函数?

edd*_*iec 8

您可以将服务或常量注入此类依赖项

angular.module('myproject.filters', [])
    .filter('userLink', ['config', function (config) {
        return function (user) {
            if (user == null)
                return "#";

            return config.appRoot + '/user/' + user.id + "/";
        };
    }]);
Run Code Online (Sandbox Code Playgroud)

如果这取决于config您提到的模块,请务必在模块语句中包含该模块.