1. 程式人生 > >Vue中的MVVM模式

Vue中的MVVM模式

MVVM全稱是Model-View-ViewModel
Vue是以資料為驅動的,Vue自身將DOM和資料進行繫結,一旦建立繫結,DOM和資料將保持同步,每當資料發生變化,DOM會跟隨變化。
ViewModel是Vue的核心,它是Vue的一個例項。Vue例項時作用域某個HTML元素上的這個HTML元素可以是body,也可以是某個id所指代的元素。
DOMListenters和DataBindings是實現雙向繫結的關鍵。DOMListers監聽頁面所有View層DOM元素的變化,當發生變化,Model層的資料隨之變化;DataBindings監聽Model層的資料,當資料發生變化,View層的DOM元素隨之變化。

陣列和物件的什麼操作vue不會響應?
由於JavaScript的限制,Vue不能檢測以下變動的陣列:
1、當你利用索引直接設定一個項時,例如:

vm.items[indexOfItem] = newValua

2、當你修改陣列的長度時,例如:

vm.items.length = newLength

受現代JavaScript的限制(以及廢棄Object.observe),Vue不能檢測到物件屬性的新增或刪除。