【发布时间】:2015-06-12 19:02:15
【问题描述】:
我正在构建一个表格,其中的行和列完全基于发送给它的数据。
我非常接近让它工作,我无法弄清楚如何构建自定义过滤器并动态传递过滤器模式
组成列的对象看起来像
{ name: 'transactionDate', displayName: 'Date / Time', displayOrder: 1, filter: "date: 'MM/dd/yy hh:mm a'" }
构成交易的对象如下所示:
{ transactionDate: '2015-06-11', transactionType: 'This Type', transactionAmount: 25 }
HTML我是这样的:
<td ng-repeat="col in columns">{{transaction[col.name] | dynamicFilter: col.filter}}</td>
我目前构建的过滤器是:
function dynamicFilter($filter) {
return function (value, filter) {
console.log(filter);
console.log(value);
var test = $filter(filter)(value);
return test;
}
}
过滤器和值都正确传递。在返回之前,我无法弄清楚如何将过滤器应用于值。可能传入的值将是2015-06-10T16:17:14,而传入的过滤器可能是date: 'MM/dd/yy hh:mm a',以创建日期/时间过滤器。或 21 和 currency 以获取美元价值。
我希望能够以与视图类似的方式使用 Angular 的内置功能
【问题讨论】:
标签: angularjs angularjs-ng-repeat angularjs-filter