目前比較流行的幾個框架,例如vue.js、react.js、avalon、angular.js等,給本身的定位都是屬於mvvm類型框架,那麼什麼是mvvm框架呢?mvvm是什麼意思呢?html
聊到mvvm就要提一下java語言中的mvc模式,因此咱們想來看下什麼是mvc。前端
一、MVC模式vue
mvc即model-view-controller(模型-視圖-控制器)java
做爲前端出身的我,在瞭解java以前,後臺語言給個人感受是下面這樣的react
確實後臺不用框架的話好像也就是那麼亂,後來看到一些MVC的框架算是對MVC模式有了新的認識數據庫
model:應用程序中處理數據邏輯的一部分,一般用來模型對象對數據庫的存存取等操做mvc
view:視圖部分,一般指jsp、html等用來對用戶展現的一部分框架
controller:控制層一般用來處理業務邏輯,負責從試圖讀取數據,並向模型發送數據jsp
view操做會觸發controller去改變model,而後model再去改變視圖,這麼以來,三個部分代碼都分開來寫,邏輯就會清晰不少;mvvm就是基於這種設計理念,來創新的提出mvvm這種開發理念來處理前端開發,能夠說mvvm就是至關於前端的mvc,下面就來講下mvvm。mvvm
二、mvvm模式
mvvm即Model-View-ViewModel,mvvm的設計原理是基於mvc的,因此說mvvm不算是一種創新,充其量是一種改造,這其中的ViewModel即是一個小小的創新;以下圖所示:
以上圖中可看出三者之間的關係;能夠將ViewMode看做是Model和View的鏈接橋,View能夠經過事件綁定Model,Model能夠經過數據綁定View,經過ViewMode能夠實現數據和視圖的徹底分離。
三、小結
以上對mvvm作了簡單的介紹,若有不當之處,還請批評指正。