vue檢測(cè)對(duì)象和數(shù)組的變化分析
來(lái)源:懂視網(wǎng)
責(zé)編:小采
時(shí)間:2020-11-27 22:12:06
vue檢測(cè)對(duì)象和數(shù)組的變化分析
vue檢測(cè)對(duì)象和數(shù)組的變化分析:在 JavaScript 中對(duì)象和數(shù)組是引用類型,指向同一個(gè)內(nèi)存空間,如果 prop 是一個(gè)對(duì)象或數(shù)組,在子組件內(nèi)部改變它會(huì)影響父組件的狀態(tài)。可以直接在子組件修改對(duì)象或數(shù)組,但是并不會(huì)數(shù)據(jù)改變就會(huì)引起變化。 檢測(cè)對(duì)象變化 1、不能檢測(cè)到對(duì)象屬性的添加或刪除
導(dǎo)讀vue檢測(cè)對(duì)象和數(shù)組的變化分析:在 JavaScript 中對(duì)象和數(shù)組是引用類型,指向同一個(gè)內(nèi)存空間,如果 prop 是一個(gè)對(duì)象或數(shù)組,在子組件內(nèi)部改變它會(huì)影響父組件的狀態(tài)。可以直接在子組件修改對(duì)象或數(shù)組,但是并不會(huì)數(shù)據(jù)改變就會(huì)引起變化。 檢測(cè)對(duì)象變化 1、不能檢測(cè)到對(duì)象屬性的添加或刪除

在 JavaScript 中對(duì)象和數(shù)組是引用類型,指向同一個(gè)內(nèi)存空間,如果 prop 是一個(gè)對(duì)象或數(shù)組,在子組件內(nèi)部改變它會(huì)影響父組件的狀態(tài)。可以直接在子組件修改對(duì)象或數(shù)組,但是并不會(huì)數(shù)據(jù)改變就會(huì)引起變化。
檢測(cè)對(duì)象變化
1、不能檢測(cè)到對(duì)象屬性的添加或刪除
var vm = new Vue({
data:{
data111:{
a = 1
}
}
})
data111.a = 2;//這個(gè)可以引起變化
但data111.b = 2;和vm.b = 2這個(gè)不能檢測(cè)到變化
需要用
Vue.set(object, key, value)
比如$set(data111, b, 2);
或者:
$set(key,value)
比如vm.$set(‘b', 2);
檢測(cè)數(shù)組變化
下面兩種情況不能檢測(cè)到變化:
1、直接通過(guò)索引設(shè)置元素,如arr[0]=12;
2、直接修改數(shù)組的長(zhǎng)度,如vm.arr.length
Vue.set( object, key, value )
用法:
this.$set(this.arr,0,12)
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
vue檢測(cè)對(duì)象和數(shù)組的變化分析
vue檢測(cè)對(duì)象和數(shù)組的變化分析:在 JavaScript 中對(duì)象和數(shù)組是引用類型,指向同一個(gè)內(nèi)存空間,如果 prop 是一個(gè)對(duì)象或數(shù)組,在子組件內(nèi)部改變它會(huì)影響父組件的狀態(tài)。可以直接在子組件修改對(duì)象或數(shù)組,但是并不會(huì)數(shù)據(jù)改變就會(huì)引起變化。 檢測(cè)對(duì)象變化 1、不能檢測(cè)到對(duì)象屬性的添加或刪除