这是我要添加到AngularJS的过滤器:
angular.module('myApp', [])
.filter('clean', function(){
return function(input){
return input;
};
})
有人可以像我这样解释五,为什么需要额外的匿名函数才能返回数据?
基本上为什么这不起作用:
angular.module('myApp', [])
.filter('clean', function(input){
return input;
})
我正在努力了解这里发生了什么,所以任何帮助都会受到赞赏。
答案 0 :(得分:3)
我们可以用另一种方式做到这一点!但这就是标准化的框架。 以相同的方式查看它的工作定义。
但是,如果仔细查看文档,它会说.filter
函数和其他类似函数应该提供程序而不是值。这有助于:
检查完整的小提琴http://jsfiddle.net/vAHbr/4/
angular.module('myApp', [])
.filter('discountcurrency',
// The provider, where we can encapsulate our filter
// creation code, without having to do JavaScript ninja
// stuff. As well as this is our chance to ask for
// dependencies.
function ($filter) {
var currency = $filter('currency');
// The actual simple filter function.
return function (value) {
return currency(value - 5);
}
});