區別:MVC中Controller演變成了MVVM中的viewModel。 MVVM主要解決了MVC中大量的DOM操作帶來的使頁面渲染效能降低,載入速度變慢等問題。 MVVM中當和Model頻繁發生變化,開發者需要主動更新到View。
一、什麼是MVVM?
在MVVM框架下視圖和模型是不能直接通訊的,只能透過ViewModel進行交互,它能夠監聽到資料的變化,然後通知視圖進行自動更新,而當用戶操作視圖時,VM也能監聽到視圖的變化,然後通知資料做相應改動,這其實實現了資料的雙向綁定。且V和VM可以進行通訊。
圖片範例如下:
MVVM模式的優點:
低耦合:View可以獨立於Model變更和修改,一個ViewModel可以綁定到不同的View上,當View變化的時候Model可以不變,當Model變化的時候View也可以不變。
可重用性: 可以把一些視圖邏輯放在一個ViewModel裡面,讓很多View重用這段視圖邏輯。
獨立開發: 開發人員可以專注於業務邏輯和資料的開發,設計人員可以專注於頁面的設計。
二、什麼是MVC?
MVC是應用最廣泛的軟體架構之一,一般MVC分為:
Model(模型),View(檢視),Controller(控制器)。這主要是基於分層的目的,讓彼此的職責分開.
View一般用過Controller來和Model進行聯繫。
Controller是Model和View的協調者,View和Model不直接聯絡。基本上都是單向聯繫。
M和V指的意思和MVVM中的M和V意思一樣。 C即Controller指的是頁面業務邏輯。 MVC是單向通訊。也就是View跟Model,必須透過Controller來承上啟動。
三、mvc與mvvm的差別:
MVC與MVVM的差別並不是VM完全取代了C,ViewModel存在目的在於抽離Controller中所展示的業務邏輯,而不是取代Controller,其它視圖操作業務等還是應該放在Controller中實作。也就是說MVVM實作的是業務邏輯元件的重複使用。
- MVC中Controller演變成MVVM中的ViewModel
-MVVM透過資料來顯示視圖層而不是節點操作
-MVVM主要解決了MVC中大量的dom操作使頁面渲染效能降低,載入速度變慢,影響使用者體驗等問題。
更多相關知識,請造訪:PHP中文網!
以上是mvvm模式和mvc模式的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!