1. 程式人生 > 實用技巧 >33.vue的兩個核心點

33.vue的兩個核心點

vue.js的兩大核心

vue.js的兩大核心:1. 資料驅動 ------------- 2.元件系統

1. 資料驅動,也就是資料的雙向繫結

Vue 響應式核心就是,getter 的時候會收集依賴,setter 的時候會觸發依賴更新

vue將遍歷data中物件的所有property,並使用Object.defineProperty把這些 property 全部轉為getter/setter

這些 getter/setter 對使用者來說是不可見的,但是在內部它們讓 Vue 能夠追蹤依賴,在 property 被訪問和修改時通知變更。

每個元件例項都對應一個watcher例項,它會在元件渲染的過程中把“接觸”過的資料 property 記錄為依賴。

getter 的時候我們會收集依賴,依賴收集就是訂閱資料變化watcher的收集,依賴收集的目的是當響應式資料發生變化時,能夠通知相應的訂閱者去處理相關的邏輯。

setter 的時候會觸發依賴更新,之後當依賴項的setter 觸發時,會通知 watcher,從而使它關聯的元件重新渲染。

2. 元件系統

元件的核心選項

1 模板(template):模板聲明瞭資料和最終展現給使用者的DOM之間的對映關係。

2 初始資料(data):一個元件的初始資料狀態。對於可複用的元件來說,這通常是私有的狀態。

3 接受的外部引數(props):元件之間通過引數來進行資料的傳遞和共享。

4 方法(methods):對資料的改動操作一般都在元件的方法內進行。

5 生命週期鉤子函式(lifecycle hooks):一個元件會觸發多個生命週期鉤子函式,最新2.0版本對於生命週期函式名稱改動很大。

6 私有資源(assets):Vue.js當中將使用者自定義的指令、過濾器、元件等統稱為資源。一個元件可以宣告自己的私有資源。私有資源只有該元件和它的子元件可以呼叫