如下
getData() {
// 假设查询的formData,一部分有属性值
const formData = {}
// 原始数据
const list = [{}, {}, {}]
// 找出所有查询条件的key
const arrKeys = Object.keys(formData).filter((item) => formData[item])
// 没有查询条件就返回所有数据
if (!arrKeys.length) return (this.disasterShowList = list)
// 在所有数据中筛选
const resultList = list.filter((item) => {
let flag = []
// 当前对象下依次判断key
arrKeys.forEach((key) => {
// 考虑到数据中有数字类型的,统一转为字符串
flag.push(item[key].toString().includes(formData[key]) ? true : false)
})
// 所有查询条件都符合才筛选出来
return flag.indexOf(false) < 0
})
// 结果
return resultList
},