vue中key的作用和原理 vue中怎么使用原生js插件?
vue中怎么使用原生js插件?當(dāng)您這樣描述它時(shí),首先想到的是Ajax]雖然您還沒(méi)有使用Vue,但文檔中一定有類(lèi)似的工具直接綁定一個(gè)類(lèi)(其中key是Vue數(shù)據(jù)的變量,key1是特定值)。BG red{背
vue中怎么使用原生js插件?
當(dāng)您這樣描述它時(shí),首先想到的是Ajax
]雖然您還沒(méi)有使用Vue,但文檔中一定有類(lèi)似的工具
直接綁定一個(gè)類(lèi)(其中key是Vue數(shù)據(jù)的變量,key1是特定值)。BG red{背景:#F00}
數(shù)據(jù)和視圖的綁定和同步最終體現(xiàn)在數(shù)據(jù)的讀寫(xiě)過(guò)程中,即Object.defineProperty屬性()在數(shù)據(jù)集和get函數(shù)中定義。Vue中定義的函數(shù)是definereactive。在簡(jiǎn)化版的實(shí)現(xiàn)中,我只保留了一些基本特性:function definereactive(obj,key,值){
var dep=new dep()Object.defineProperty屬性(obj,key,{
enumerable:true,
configurable:true,
get:function reactiveGetter(){
if(部門(mén)目標(biāo)) {
部門(mén)依賴(lài)()
}
返回值
},
set:函數(shù)reactiveSetter(newVal){
if(value===newVal){
return
}else{
value=newVal部門(mén)通知讀取數(shù)據(jù)時(shí),如果有觀察者(觀察者將負(fù)責(zé)將新數(shù)據(jù)發(fā)送到視圖),則將觀察者綁定到當(dāng)前數(shù)據(jù)(部門(mén)依賴(lài)(),dep將當(dāng)前數(shù)據(jù)和所有觀察者之間的依賴(lài)關(guān)系關(guān)聯(lián)起來(lái)是一個(gè)檢查和記錄依賴(lài)關(guān)系的過(guò)程。為數(shù)據(jù)賦值時(shí),如果數(shù)據(jù)發(fā)生變化,將通知所有觀察者部門(mén)通知())。這樣,即使我們手動(dòng)更改數(shù)據(jù),框架也可以自動(dòng)將數(shù)據(jù)與視圖同步。