0

我使用单元格过滤器在一个单元格中显示绑定实体的多个属性。因此没有一个字段名称,因为它是一个计算字段。如果涉及的属性之一发生更改,如何强制网格重新评估单元格过滤器?

列定义:

columnDefs: [
  { field: 'xxx', displayName: 'Something', cellFilter: 'concatSomeProps:this' }
]

过滤器:

myApp.filter('concatSomeProps', function () {
  return function (cellValue, scope) {
    var entity = scope.row.entity;
    return entity.prop1 + ", " + entity.prop2;
  };
});

如果尝试使用 notifyDataChanged 或网格 api 的刷新功能但它不起作用。

4

1 回答 1

0

在这种情况下,我可能会使用cellTemplate,而不是过滤器:

{ field: 'xxx', displayName: 'Something', cellTemplate:'template.html' }

<script type="text/ng-template" id="template.html">
   <div>
       {{row.entity.name + row.entity.age}}
   </div>
</script>

看看我为你制作的这个 Plnkr 看看我在说什么。编辑前两个字段之一,您将看到 concat 字段发生变化。您还可以更改您的模板以使用row.entity.prop1+row.entity.prop2来使其工作,因为我的模板适用于我的列。

于 2016-08-22T14:59:38.013 回答