ng2-smart-table 的异步过滤函数
asynchronous filter function for ng2-smart-table
我正在开发 Angular 6 应用程序。
我在 ng2-smart-table
中有一个自定义组件可以正确显示。我想过滤它们。
对 API 的调用是异步完成的,并且 returns 是一个 promise。
filterFunction
参数根本没有过滤我的 table。
settings = {
actions: {
...
},
columns: {
id: {
title: 'Id'
},
organisation_id: {
title: 'Cumstom Field',
type: 'custom',
renderComponent: CustomComponent,
filterFunction: (cell?: any, search?: string) => {
return this.api-service-filter(cell, search)
},
api-service-filter
returns 一个承诺。
当我在控制台中记录结果时,我从 API 获得了正确的 true
/ false
returns。但它根本不会改变显示。
知道如何完成这项工作吗?它是 ng2-smart-table 的特性还是我做错了什么?
谢谢!
我为此使用了一个解决方法,创建了 API 响应的本地副本并订阅了这个 API 调用。
然后filter函数只访问本地副本,可以同步写入。
我正在开发 Angular 6 应用程序。
我在 ng2-smart-table
中有一个自定义组件可以正确显示。我想过滤它们。
对 API 的调用是异步完成的,并且 returns 是一个 promise。
filterFunction
参数根本没有过滤我的 table。
settings = {
actions: {
...
},
columns: {
id: {
title: 'Id'
},
organisation_id: {
title: 'Cumstom Field',
type: 'custom',
renderComponent: CustomComponent,
filterFunction: (cell?: any, search?: string) => {
return this.api-service-filter(cell, search)
},
api-service-filter
returns 一个承诺。
当我在控制台中记录结果时,我从 API 获得了正确的 true
/ false
returns。但它根本不会改变显示。
知道如何完成这项工作吗?它是 ng2-smart-table 的特性还是我做错了什么?
谢谢!
我为此使用了一个解决方法,创建了 API 响应的本地副本并订阅了这个 API 调用。 然后filter函数只访问本地副本,可以同步写入。