摘要:MVVM是Model-View-ViewModel的簡(jiǎn)寫(xiě)。即模型-視圖-視圖模型?!灸P汀恐傅氖呛蠖藗鬟f的數(shù)據(jù)?!疽晥D】指的是所看到的頁(yè)面。【視圖模型】mvvm模式的核心,它是連接view和model的橋梁。它有兩個(gè)方向:一是將【模型】轉(zhuǎn)化成【視圖】,即將后端傳遞的數(shù)據(jù)轉(zhuǎn)化成所看到的頁(yè)面。實(shí)現(xiàn)的方式是:數(shù)據(jù)綁定。二是將【視圖】轉(zhuǎn)化成【模型】,即將所看到的頁(yè)面轉(zhuǎn)化成后端的數(shù)據(jù)。實(shí)現(xiàn)的方式是:DOM
MVVM是Model-View-ViewModel的簡(jiǎn)寫(xiě)。即模型-視圖-視圖模型?!灸P汀恐傅氖呛蠖藗鬟f的數(shù)據(jù)?!疽晥D】指的是所看到的頁(yè)面?!疽晥D模型】mvvm模式的核心,它是連接view和model的橋梁。它有兩個(gè)方向:一是將【模型】轉(zhuǎn)化成【視圖】,即將后端傳遞的數(shù)據(jù)轉(zhuǎn)化成所看到的頁(yè)面。實(shí)現(xiàn)的方式是:數(shù)據(jù)綁定。二是將【視圖】轉(zhuǎn)化成【模型】,即將所看到的頁(yè)面轉(zhuǎn)化成后端的數(shù)據(jù)。實(shí)現(xiàn)的方式是:DOM 事件監(jiān)聽(tīng)。這兩個(gè)方向都實(shí)現(xiàn)的,我們稱(chēng)之為數(shù)據(jù)的雙向綁定。
總結(jié):在MVVM的框架下視圖和模型是不能直接通信的。它們通過(guò)ViewModel來(lái)通信,ViewModel通常要實(shí)現(xiàn)一個(gè)observer觀察者,當(dāng)數(shù)據(jù)發(fā)生變化,ViewModel能夠監(jiān)聽(tīng)到數(shù)據(jù)的這種變化,然后通知到對(duì)應(yīng)的視圖做自動(dòng)更新,而當(dāng)用戶(hù)操作視圖,ViewModel也能監(jiān)聽(tīng)到視圖的變化,然后通知數(shù)據(jù)做改動(dòng),這實(shí)際上就實(shí)現(xiàn)了數(shù)據(jù)的雙向綁定。并且MVVM中的View 和 ViewModel可以互相通信。
批改老師:天蓬老師批改時(shí)間:2018-12-06 16:25:08
老師總結(jié):vm層功能類(lèi)似于傳統(tǒng)的控制器, 不過(guò)是工作在前端罷了