有什么方法可以根据网格中单元格的背景颜色创建列过滤器

时间:2019-04-22 07:40:49

标签: extjs extjs4

我是extjs的新手,需要在网格中创建一个过滤器,该过滤器可以根据单元格的背景色来过滤列。我已经根据需要在单元格上设置了背景色,但是找不到任何东西来创建可以根据背景色过滤列的过滤器。

我尝试了列表过滤器,但是它仅支持单元格内部的值,而不支持cells的背景色。

这是使用背景颜色创建单元格的代码:

renderer : function(value, meta) {
    if(parseInt(value) > 0) {
        meta.style = "background-color:green;";
    } else {
        meta.style = "background-color:red;";
    }
    return value;
}

1 个答案:

答案 0 :(得分:0)

您不能基于单元格背景色添加过滤器。

您应该按参数过滤。您可以在模型color中添加新参数,并使用convert函数根据其他列值将值设置为颜色。

例如

{
     name: 'color',
     convert: function (v, rec) {
         return rec.get('otherParam') > 0 ? 'green' : 'red';
     },
     depends: ['otherParam']
 }