今天就跟大家聊聊有關(guān)vue中mvvm模式的作用有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
塔河網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,塔河網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為塔河千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營(yíng)銷網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的塔河做網(wǎng)站的公司定做!
在MVVM架構(gòu)下,View 和 Model 之間其實(shí)并沒(méi)有直接的聯(lián)系,而是通過(guò)ViewModel進(jìn)行交互,Model 和 ViewModel 之間的交互是雙向的, 因此View 數(shù)據(jù)的變化會(huì)同步到Model中,而Model 數(shù)據(jù)的變化也會(huì)立即反應(yīng)到View 上。
好啦,說(shuō)到這可能有些小伙伴會(huì)問(wèn)view 什么,Model是什么?
Model 層代表數(shù)據(jù)模型,也可以在Model中定義數(shù)據(jù)修改和操作的業(yè)務(wù)邏輯;
View 代表UI 組件,它負(fù)責(zé)將數(shù)據(jù)模型轉(zhuǎn)化成UI 展現(xiàn)出來(lái),ViewModel 是一個(gè)同步View 和 Model的對(duì)象。
Vue是以數(shù)據(jù)為驅(qū)動(dòng)的,Vue自身將DOM和數(shù)據(jù)進(jìn)行綁定,一旦創(chuàng)建綁定,DOM和數(shù)據(jù)將保持同步,每當(dāng)數(shù)據(jù)發(fā)生變化,DOM會(huì)跟著變化。
現(xiàn)在明白了吧!
好啦 我們繼續(xù)談?wù)勊鼈內(nèi)咧g的關(guān)系呀 它們之間是不是有個(gè)三角戀吶
哈哈 不錯(cuò)
ViewModel 通過(guò)雙向數(shù)據(jù)綁定把 View 層和 Model 層連接了起來(lái),ViewModel里面包含DOM Listeners和Data Bindings,DOM Listeners和Data Bindings是實(shí)現(xiàn)雙向綁定的關(guān)鍵。DOM Listeners監(jiān)聽頁(yè)面所有View層DOM元素的變化,當(dāng)發(fā)生變化,Model層的數(shù)據(jù)隨之變化;Data Bindings監(jiān)聽Model層的數(shù)據(jù),當(dāng)數(shù)據(jù)發(fā)生變化,View層的DOM元素隨之變化。
mvvm有什么好處呢 當(dāng)然這個(gè)肯定有好處的 不然學(xué)它干哈
1. 低耦合。View可以獨(dú)立于Model變化和修改,一個(gè)ViewModel可以綁定到不同的View上,當(dāng)View變化的時(shí)候Model可以不變,當(dāng)Model變化的時(shí)候View也可以不變。
2. 可重用性。可以把一些視圖的邏輯放在ViewModel里面,讓很多View重用這段視圖邏輯。
3. 獨(dú)立開發(fā)。開發(fā)人員可以專注與業(yè)務(wù)邏輯和數(shù)據(jù)的開發(fā)(ViewModel)。設(shè)計(jì)人員可以專注于界面(View)的設(shè)計(jì)。
4. 可測(cè)試性??梢葬槍?duì)ViewModel來(lái)對(duì)界面(View)進(jìn)行測(cè)試
看完上述內(nèi)容,你們對(duì)vue中mvvm模式的作用有哪些有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。