vue2響應(yīng)式的缺點影響
前言:
響應(yīng)式:數(shù)據(jù)改變-->視圖跟著變
對象新增的屬性沒有響應(yīng)式 數(shù)組的部分操作沒有響應(yīng)式
push(),pop(),shift(),unshift(),splice(),sort(),reverse()
以上7中API會修改原數(shù)組(vue2的內(nèi)部重寫了這7個API)
其他的操作都不會有響應(yīng)式
實際簡單操作一波:
<template>
<div>
<span v-for="(item,index) in arr " :key="index">{{item}}</span>
<hr>
<button @click="arr[0]=100">點擊把第一個元素變成100</button>
</div>
</template>
<script>
export default {
data() {
return {
arr:[1,2,3]
}
},
}
</script>
<style>
span{
margin: 10px;
background-color: orange;
padding: 10px;
border-radius: 5px;
} button{
background-color: orange;
font-size: 20px;
border: 0;
cursor:pointer;
}
</style>
你們會發(fā)現(xiàn)vue里面的數(shù)據(jù)其實已經(jīng)改成100了,但是頁面并沒有渲染出來.
現(xiàn)在我們換一種,換成splice來操作:
<template>
<div>
<span v-for="(item,index) in arr " :key="index">{{item}}</span>
<hr>
<button @click="arr.splice(0,1,100)">點擊把第一個元素變成100</button>
</div>
</template>
<script>
export default {
data() {
return {
arr:[1,2,3]
}
},
}
</script>
<style>
span{
margin: 10px;
background-color: orange;
padding: 10px;
border-radius: 5px;
} button{
background-color: orange;
font-size: 20px;
border: 0;
cursor:pointer;
}
</style>
數(shù)據(jù)修改的同時,dom也成功渲染
到此這篇關(guān)于vue2響應(yīng)式的缺點影響的文章就介紹到這了,更多相關(guān)vue2響應(yīng)式缺點內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue動態(tài)權(quán)限登錄實現(xiàn)(基于路由與角色)
很多應(yīng)用都會需要對不同的用戶進(jìn)行權(quán)限控制,本文主要介紹了Vue動態(tài)權(quán)限登錄實現(xiàn)(基于路由與角色),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05
el-form組件使用resetFields重置失效的問題解決
用el-form寫了包含三個字段的表單,使用resetFields方法進(jìn)行重置,發(fā)現(xiàn)點擊重置或要清空校驗時是失效的,所以本文給大家介紹了el-form組件使用resetFields重置失效的問題解決,需要的朋友可以參考下2023-12-12

