我正在使用剔除计算函数根据用户的输入使用过滤器更新列表。这个列表有一些预定义的数据,当应用过滤器时,我想知道生成的过滤列表的大小。我尝试了以下操作,但它不打印更新的过滤数据计数。
this.dataprovider = ko.computed(function () {
const filterRegEx = new RegExp(self.filter(), 'i');
const filterCriterion = {
op: '$or',
criteria: [
{
op: '$regex',
value: {
name: filterRegEx,
},
},
{
op: '$regex',
value: {
dept: filterRegEx,
},
},
],
};
const arrayDataProvider = new ArrayDataProvider(self.data(), {
keyAttributes: 'deptid',
});
const listDataProviderView = new ListDataProviderView(arrayDataProvider, {
filterCriterion: filterCriterion,
});
listDataProviderView.getTotalSize().then(function (totalCount) {
self.filteredCount('Total rows: ' + totalCount);
});
return listDataProviderView;
}, this);