1. 什么是MVVM 不管是MVC,MVP,或者MVVM,都是常見的軟件架構設計模式(Architectural Pattern),它通過分離關注點來改進代碼的組織方式。
不同于設計模式(Design Pattern),只是為了解決一類問題而總結出的抽象方法,一種架構模式往往使用了多種設計模式。
MVVM,可以拆分為Model-View-ViewModel來理解:
- Model - 數據模型,可以對應到真實開發過程中的數據包
- View - 視圖層,布局和外觀,可以對應到真實開發中的 DOM結構
- ViewModel - 扮演“View”和“Model”之間的使者,幫忙處理 View 視圖層的全部業務邏輯
2. 為什么使用MVVM框架要回答這個問題,我們需要對比一下,在使用MVVM框架之前,我們是如何完成前端交互的。
- 使用前,為了修改某個視圖節點中的內容信息,我們需要頻繁人為操作DOM,效率低下 var dom = document.querySelector('div'); dom.innerHTML = '張三豐'; dom.style.color = 'red';
- 使用后,當name數據發生變化的時候,視圖區域的name自定觸發更新,極大提高開發效率
{{name}}