常見面試題之關於對MVVM的理解
-
MVVM 是 Model-View-ViewModel 的縮寫,它是一種軟件架構風格
- Model:數據模型,數據和業務邏輯都在Model層中定義
- View:表UI視圖,負責數據的展示(用於渲染數據)
- ViewModel:視圖模型,其實本質上就是 Vue 實例。就是與界面(view)對應的Model。因為,數據庫結構往往是不能直接跟界面控件一一對應上的,所以,需要再定義一個數據對象專門對應view上的控件。而ViewModel的職責就是把model對象封裝成可以顯示和接受輸入的界面數據對象。
- 解釋:Model和View並無直接關聯,而是通過ViewModel來進行聯系的,Model和ViewModel之間有着雙向數據綁定的聯系。因此當Model中的數據改變時會觸發View層的刷新,View中由於用戶交互操作而改變的數據也會在Model中同步。。
簡單的說,ViewModel就是View與Model的連接器,View與Model通過ViewModel實現雙向綁定。