<el-cascader v-model="searchCheck" :options="options" @change="handleChange"></el-cascader>
<el-button type="primary" @click="resetCheck">重置</el-button>
data(){
return{
searchCheck: [],
options: [
{
value: "patent_type_id",
label: "专利状态",
children: [
{value: "1",label: "发明专利"},
{value: "2",label: "实用新型"},
{value: "3",label: "外观设计"},
],
},
{
value: "patent_status_id",
label: "案件状态",
children: [
{value: "1",label: "等待申请费"},
{value: "3",label: "等年登印费"},
],
},
{
value: "sell_status",
label: "交易状态",
children: [
{value: "0"label: "未交易"},
{value: "1"label: "未发布"},
],
},
],
},
methods:{
fetchData() {
const that = this;
fetchList().then((response) => {
that.tableData = response.data.items;
that.tableDataCopy = response.data.items;
}).catch(() => {});
},
resetCheck() {
this.searchCheck = [];
this.fetchData();
},
handleChange(value) {
let list = [];
let searchList = [];
this.tableDataCopy.forEach((val) => {
list.push(val[value[0]]);
});
list = this.findall(list, Number(value[1]));
list.forEach((val) => {
searchList.push(this.tableDataCopy[val]);
});
this.tableData = searchList;
},
findall(a, x) {
var results = [],
len = a.length,
pos = 0;
while (pos < len) {
pos = a.indexOf(x, pos);
if (pos === -1) {break;}
results.push(pos);
pos += 1;
}
return results;
},
}