要定义 Angular 的过滤器,您应该编写:
angular.module('app', [])
.filter('mix', function () {
// Why do we return a function here?
return function (input) {
var output;
// doing some business here
return output;
};
});
为什么Angular在传递给函数的回调函数内部返回一个函数filter
?为什么不直接使用它作为过滤器定义的占位符和模板呢?这种语法根本对开发人员不友好。Angular 使用这个函数嵌套有什么限制?它是一种模式吗?
我猜看起来合乎逻辑和正常的(基于大量使用 jQuery 和其他库)是这样的语法:
angular.module('app', [])
.filter('mix', function (input) {
var output;
// doing some business here
return output;
});