MVVM是Model-View-ViewModel的簡寫。它本質(zhì)上就是MVC(Model-View-Controller)的改進版。在開發(fā)過程中,由于需求的變更或添加,項目的復雜度越來越高,代碼量越來越大,此時我們會發(fā)現(xiàn)MVC維護起來有些吃力,尤其Controller控制層非常的厚重,非常的龐大,難以維護。
所以有人想到把Controller的數(shù)據(jù)和邏輯處理部分從中抽離出來,用一個專門的對象去管理,這個對象就是ViewModel。ViewModel 是由前端開發(fā)人員組織生成和維護的視圖數(shù)據(jù)層。在這一層,前端開發(fā)者對從后端獲取的 Model 數(shù)據(jù)進行轉(zhuǎn)換處理,做二次封裝,以生成符合 View 層使用預期的視圖數(shù)據(jù)模型。
由于實現(xiàn)了雙向綁定,ViewModel 的內(nèi)容會實時展現(xiàn)在 View 層,這是激動人心的,因為前端開發(fā)者再也不必低效又麻煩地通過操縱 DOM 去更新視圖,MVVM 框架已經(jīng)把最臟最累的一塊做好了,我們開發(fā)者只需要處理和維護 ViewModel,更新數(shù)據(jù)視圖就會自動得到相應更新,真正實現(xiàn)數(shù)據(jù)驅(qū)動開發(fā)。
更多關于“前端培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓經(jīng)驗,課程大綱更科學更專業(yè),有針對零基礎的就業(yè)班,有針對想提升技術的好程序員班,高品質(zhì)課程助力你實現(xiàn)程序員夢想。