过滤不适用于通过函数构造的字段

Filtering doesn't work on a field constructed via a function

我有这个列定义:

{ title:"User name", field:"whatever", formatter:fleetTableUserFormatter, width: '20%', headerFilter:true },

然后 fleetTableUserFormatter:

function fleetTableUserFormatter(cell){
    let data = cell.getData();
    if (data.user_first_name || data.user_last_name){
        return `${ data.user_first_name } ${ data.user_last_name } [${ data.user_number }]`;
    }
    return 'Undefined';
}

并且过滤不起作用,它确实显示了,但是当输入有效数据时,它过滤掉了所有内容。

我想我也许应该创建一个函数,然后 headerFilter:myFunction 但我不能 google 关于这个函数应该做什么的任何信息 return?

好的,知道了,官方文档里有:)

http://tabulator.info/docs/4.7/filter#header,然后是“过滤器比较类型”部分。以防万一有人用谷歌搜索这个问题。

您无法过滤在格式化程序中创建的数据。

格式化程序只是可视的,不影响排序或过滤。

如果要对此类列进行排序或过滤,则需要使用 Mutator 来创建数据。

这将可用于过滤和排序