数据数组操作之过滤数据filter
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会改变原始数组。 需要接收
//1:自定义去掉打过勾选的项
fnHideDagou(){//自定义去掉打过勾选的项 console.log('自定义去掉打过勾选的项',this.data) // var count = 0 // //储存打勾后的表单项目 // this.data.map((data)=>{ // if(!data.lj_detail) return // data.lj_detail.find((v)=>{//获取第一次符合条件的项目并返回记录值 // if(v[8]!=='打钩了') // return count++ // }) // }) // 过滤掉找到内层的v[8]等于null的 this.data = this.data.filter((data)=>{ if(!data.lj_detail) return return data.lj_detail.find((v)=>{ return v[8]==null }) }) // console.log('count-----',count) },
2:比较通用的模糊搜索
computed:{ } tables(){ const search = this.search//搜索词 if(search){ //过滤 return this.data.filter(data=>{
//return Object.keys(data).some(key=>{ //--也可以模糊搜索所有data内的key
return ["zl_no","pd_id","pd_name"].some(key=>{//指定key项进行搜索 return String(data[key]).toLowerCase().indexOf(search) > -1 }) }) } return this.data },