1. 程式人生 > >vue中數組刪除,頁面沒重新渲染

vue中數組刪除,頁面沒重新渲染

渲染 數據 rip this dex span urn fault script


創建一個組件時,數據類型是數組,在刪除這個數組中的數據時,數組中的數據是對的,但頁面渲染的數據卻不對。

舉例:(不一定復現)

<ul>
<li v-for="(item, index) in peoples" :key="index">{{item.name}}
<span @click="del(index)">刪除</span>
</li>
</ul>

<script>
export default {
data() {
return {
peoples: [
{
name: ‘tom‘,
id: ‘1‘
},
{
name: ‘kitty‘,
id: ‘2‘
},
{
name: ‘jack‘,
id: ‘3‘
}
]
}
},
methods: {
del (index) {
this.peoples.splice(index, 1)
}
}
}
</script>

原因:設置v-for時:key用的是index。key的值不是唯一造成的。
解決::key="item.id"設置成唯一的值
原理:待補

vue中數組刪除,頁面沒重新渲染