更新時間:2021年01月25日15時35分 來源:傳智教育 瀏覽次數(shù):
Vue(讀音/Vju:/,類似于View)是一套用于構(gòu)建用戶界面的漸進式框架,與其他大型框架相比,Vue被設(shè)計為可以自底向上逐層應(yīng)用。其他大型框架往往一-開始就對項 目的技術(shù)方案進行強制性的要求,而Vue更加靈活,開發(fā)者既可以選擇使用Vue來開發(fā)一個全新項目,也可以將Vue引入到一個現(xiàn)有的項目中。
另一方面,當(dāng)Vue與現(xiàn)代化的工具鏈以及各種支持類庫結(jié)合使用時,也完全能夠為復(fù)雜的單頁應(yīng)用提供驅(qū)動。工具鏈?zhǔn)侵冈谇岸碎_發(fā)過程中用到的一系列工具,例如,使用腳手架工具創(chuàng)建應(yīng)用,使用依賴管理工具安裝依賴包,以及使用構(gòu)建工具進行代碼編譯等。
Vue的數(shù)據(jù)驅(qū)動是通過MVVM( Model-View-ViewModel )模式來實現(xiàn)的,其基本工作原理如圖下圖所示。
VUE的基本工作原理
從上圖中可以看出,MVVM主要包含3個部分,分別是Model、View 和ViewModel。Model指的是數(shù)據(jù)部分,主要負(fù)責(zé)業(yè)務(wù)數(shù)據(jù); View指的是視圖部分,即DOM元素,負(fù)責(zé)視圖的處理。ViewModel是連接視圖與數(shù)據(jù)的數(shù)據(jù)模型,負(fù)責(zé)監(jiān)聽Model或者View的修改。
在MVVM中,數(shù)據(jù)(Model)和視圖(View)是不能直接通信的,視圖模型(ViewModel)就相當(dāng)于一個觀察者,監(jiān)控著雙方的動作,并及時通知進行相應(yīng)操作。當(dāng)Model 發(fā)生變化的時候,ViewModel能夠監(jiān)聽到這種變化,并及時通知View做出相應(yīng)的修改。反之,當(dāng)View發(fā)生變化時,ViewModel監(jiān)聽到變化后,通知Model進行修改,實現(xiàn)了視圖與模型的互相解耦。
猜你喜歡: