原本有数据,后添加的数据不能与原来数据有重复值。
const data: [] = result.data.content;// 从后端获取到的数据
if( _this.notices.length > 0) {
// 如果notices本来就有数据,则后面新进的数据要将与前面数据中重复的删掉
const validData = data.filter((collect) => _this.notices
.findIndex((coll) => coll.id === collect.id) < 0 )
// 过滤出与原来数据中不同的数据
if(validData.length <=0 ) {
console.info(‘没有数据啦!’)
} else {
_this.notices.push(...validData)
this.dataState = 2
}
} else {
// 如果notices刚开始没有数据,则直接将data返回数据赋给他
_this.notices = data
}
初始值中去掉重复数据
function myFunction(item) {
var numbers = [
{id: 1, name: '陈黄平'},
{id: 2, name: '平儿'},
{id: 3, name: '黄黄'},
{id: 4, name: '朱朱'},
{id: 4, name: '喆喆'}
];
let hash = {}
var aa = numbers.reduce((total, item) => {
console.log(!hash[item.id])
if (!hash[item.id]) {
hash[item.id] = true
total.push(item)
}
return total
}, [])
}