index.html檔案
一下是手寫vue的js邏輯**檔案層層下去乙個個建就好了
import from "./init"
function vue(options)
//擴充套件原型
initmixin(vue)
export default vue;
import from "./state"
export function initmixin(vue)
import from "./observer/inex";
import from "./utils";//存放一下工具和方法
export function initsate(vm)
}function initdata(vm)
export function isfunction (val)
export function isobject (val)
import from "../utils";
// 檢測資料變化 類有型別
class observer
walk(data))
}}//vue2會對物件進行遍歷 將每個屬性用defineproperty 重新定義 效能差
function definereactive(data,key,value),
set(newv)
})}export function observe(data)
//預設最外層的data必須是乙個物件
return new observer(data)
}
以上的基本的響應式處理內容,下面我繼續學習繼續更新哦! vue原始碼學習 響應式資料
vue原始碼學習 初始化data vue原始碼學習 響應式資料 在 vue原始碼學習 初始化data 一文中,知道了在new vue 時做了一系列初始化操作,其中在初始化data資料時,利用observe data,true 方法,對資料屬性進行了觀察。下面來具體看下是如何對data進行的觀察,從而...
學習 vue 原始碼 響應式原理
由於剛開始學習 vue 原始碼,而且水平有限,有理解或表述的不對的地方,還請不吝指教。vue 主要通過 watcher dep 和 observer 三個類來實現響應式檢視。另外還有乙個 scheduler 來進行排程,本次暫時不做討論。watcher 和 dep 是訂閱者和發布者的關係,每個 wa...
Vue響應式原始碼分析
初始化資料initdata時呼叫obsreve函式。observe函式主要做了3件事 如果不是物件則啥都不做退出。物件已經是響應式的了,有 ob 了,直接返回這個依賴收集器。物件還不是響應式的,執行new observer observer中主要做了3件事 新建乙個new dep 依賴收集器,定義到...