因为业务需求,需要对显隐列做缓存,因为有字段排序功能,所以存入storage,导致每次发版本跟新了列表配置,不能实时跟新列表内容字段(用的avue crud组件)
const arr = [...arr1].filter(x => [...arr2].every(y => y.prop !== x.prop))
//可以返回 arr1比arr2多出的字段 反之比较少了的字段
colOptionDiff(tableOption) {
// 新增了的配置对象(比较取出的本地配置项和最新配置项)
const arr = [...this.colSelect].filter(x => [...tableOption].every(y => y.prop !== x.prop))// 返回多出部分
// 删除的配置对象
const arr2 = [...tableOption].filter(x => [...this.colSelect].every(y => y.prop !== x.prop))// 返回少的部分
return tableOption.filter(x => arr2.every(y => y.prop !== x.prop)).concat(JSON.parse(JSON.stringify(arr)))
}