`
搜索:
<script>
export default {
data () {
return {
dormitory: [{
people: '张三',
meet: '1111'
}, {
people: '李四',
meet: '2222'
}, {
people: '王五',
meet: '3333'
}, {
people: '赵六',
meet: '444443'
}, {
people: '马七',
meet: '55555',
}, {
people: '袁八',
meet: '666661'
}, {
people: '戴九',
meet: '777772',
}],
search: ''
}
},
computed: {
// 模糊搜索
tables () {
const search = this.search
if (search) {
// filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
// 注意: filter() 不会对空数组进行检测。
// 注意: filter() 不会改变原始数组。
return this.dormitory.filter(data => {
// some() 方法用于检测数组中的元素是否满足指定条件;
// some() 方法会依次执行数组的每个元素:
// 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测;
// 如果没有满足条件的元素,则返回false。
// 注意: some() 不会对空数组进行检测。
// 注意: some() 不会改变原始数组。
return Object.keys(data).some(key => {
if(key==="meet"){//加这个针对某一列做搜索,不加对整个table做搜索
console.log(key)
// indexOf() 返回某个指定的字符在某个字符串中首次出现的位置,如果没有找到就返回-1;
// 该方法对大小写敏感!所以之前需要toLowerCase()方法将所有查询到内容变为小写。
return String(data[key]).toLowerCase().indexOf(search) > -1
}
})
})
}
return this.dormitory
}
},
methods: {
}
}
</script>