首頁  >  文章  >  web前端  >  關於vue檢測物件和陣列的變化分析

關於vue檢測物件和陣列的變化分析

不言
不言原創
2018-06-30 16:14:111449瀏覽

這篇文章跟大家分享了vue偵測物件和陣列的變化的相關知識點與實例程式碼,有興趣的朋友參考下。

在 JavaScript 中物件和陣列是參考類型,指向同一個記憶體空間,如果 prop 是物件或數組,在子元件內部改變它會影響父元件的狀態。可以直接在子元件修改物件或數組,但是並不會資料改變就會引起變化。

偵測物件變化

1、無法偵測到物件屬性的新增或刪除

var vm = new Vue({
 data:{
   data111:{
     a = 1
   }
 }
})

data111.a = 2;//這個可以引起變化

但data111.b = 2;和vm.b = 2這個不能偵測到變化

#需要用

Vue.set(object, key, value)

例如

$set(data111, b, 2);

或:

$set(key,value)

例如

vm.$set(‘b', 2);

檢測數組變化

下面兩種情況無法偵測到變化:

1、直接透過索引設定元素,如arr[0]=12;

#2、直接修改陣列的長度,如vm.arr.length

Vue.set( object, key, value )

用法:

this.$set(this.arr,0,12)

以上就是本文的全部內容,希望對大家的學習有幫助,更多相關內容請關注PHP中文網!

相關推薦:

關於vue資料控制視圖原始碼的分析

#關於Vue 動態設定路由參數的介紹

#

以上是關於vue檢測物件和陣列的變化分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn