如何过滤从ng2智能表中的valuePreparefunction返回的自定义数据

时间:2018-11-17 11:04:40

标签: angular ng2-smart-table

我使用ng2智能表, 我的问题是过滤器,因为我从ng2智能表的valueprepareFunction返回了自定义数据,

我有这个。...

columns: {
id: {
  title: 'Id',
  type: 'string'
},
surname: {
  title: 'surname',
  type: 'string'
},
name: {
  title: 'name',
  type: 'string'
},
date: {
  title: 'date',
  valuePrepareFunction: (value) => {
    if (!value) return '';
    return moment(value).format('DD/MM/YYYY');
  },
}

}

该值是从数据库获取的timeStamp, 当我尝试从表格中进行过滤时,她通过时间戳进行过滤,但我希望使用“ DD / MM / YYYY”这种格式进行过滤。

如何在过滤器之前的时间戳中更改搜索输入?

1 个答案:

答案 0 :(得分:0)

我在ng2-smart-table设置中使用filterFunction解决了...

data_pratica: {
  title: 'date',
  type: 'string',
  valuePrepareFunction: (value) => {
    // example of value.... value = 1543105073896
    // value is timeStamp
    if (!value) return '';
    return moment(value).format('DD/MM/YYYY');
  },
  filterFunction: (cell?: any, search?: string) => {
    // cell? is the value of the cell, in this case is a timeStamp
    if (search.length > 0) {
      return moment(cell).format('DD/MM/YYYY').match(search);
    }
  }
}