$ filter无效

时间:2015-07-21 04:34:20

标签: javascript angularjs angularjs-filter

我为ui-grid的单元格数据创建了一个过滤器。我想应用我的自定义过滤器与内置的角度货币过滤器。请在下面找到我的代码:

var HelperServices = angular.module("HelperServices",['Constants']);
HelperServices.filter('getPriceFormat',function(){
    return function(val, $filter){          
            if(val == 0)
                return;
            else
                return ($filter('currency')(val, "", 7));           
            }
});

我在TypeError: undefined is not a function部分的返回声明中收到错误else

如何在自定义过滤器内部使内置过滤器工作?

2 个答案:

答案 0 :(得分:2)

你错误地注射了$filter,应该是

HelperServices.filter('getPriceFormat',function($filter){
    return function(val){          
            if(val == 0)
                return;
            else
                return ($filter('currency')(val, "", 7));           
            }
});

答案 1 :(得分:1)

您忘记将$filter服务注入过滤器

filter('getPriceFormat',function($filter){

或更好的内联数组注释...

filter('getPriceFormat', ['$filter', function($filter){