首先行数据中增加filters:[]和filterMethod()方法
familyColumns: [
{
title: '类别&族',
align: 'center',
children: [
{
title: '族类别',
key: 'Classification',
width: 100,
filters: [
],
filterMethod (value, row) {
//return row.category.indexOf(value) > -1
return row.Classification == value;
}
},
{
title: '族名称',
key: 'FamilyStr',
render: (h, params) => {
return h('span', {
attrs: {
title: params.row.FamilyStr
},
domProps: {
innerHTML: params.row.FamilyStr
},
});
},
}
],
},
],
然后在给表单数据填充内容赋值时,同时可以写一些操作对过滤器数组进行赋值
_this.familyParamData = data.Data;
if (_this.familyParamData.length > 0) {
let obj = [];
for (var i = 0; i < _this.familyParamData.length; i++) {
let temp = _this.familyParamData[i];
obj.push({
label: temp.Classification,
value: temp.Classification,
});
}
_this.familyColumns[0].children[0].filters = obj; // 此处就是动态赋值了
}