サマリー:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>在頁面渲染方式 上MVVM與傳統(tǒng)的MVC模式相比有哪些優(yōu)勢</title> </head> <body> <h2>在頁面渲染方式 上MVVM與傳統(tǒng)的MVC模式相比有哪些優(yōu)勢</h2> <div> <p></p> <p> 1.MVC </p> <p> a.MVC:是Model-View-Controller的縮寫;</p> <p> b.M:Model,模型,主要處理與數(shù)據(jù)庫相關(guān)的業(yè)務(wù)邏輯;</p> <p> V:View,視圖,主要負責(zé)數(shù)據(jù)在客戶端/瀏覽器上的展示; </p> <p> C:Controller:控制器,視圖與模型之間傳遞消息,例如接受請求,選擇模型,渲染視圖等; </p> <p> c.MVC基本的運行流程是: </p> <p> 1. 視圖發(fā)起請求-->控制器接收請求-->轉(zhuǎn)發(fā)給對應(yīng)模型處理-->模型將結(jié)果返回到控制器-->控制器返回到視圖; </p> <p> 2. 簡單描述: View-->Controller-->Model-->Controller-->View, 即 V-C-M-C-V; </p> <p> 3. 整個過程是封閉的,單向的,視圖與模型之間不允許直接直接通訊,必須通過控制器進行; </p> <p> d. MVC開發(fā)的基本原則: </p> <p> 1. 需要服務(wù)器端配合,模型Model與控制器Controller都在服務(wù)器端完成; </p> <p> 2. 服務(wù)器處理過的數(shù)據(jù),必須通過JavaScript在前端進行渲染; </p> <p> 2. '厚模型,薄控制器',業(yè)務(wù)邏輯盡可能寫到模型中,控制器僅調(diào)用模型提供的接口即可; </p> <p> 2.MVVM: </p> <p> a.隨著前端頁面開發(fā)越來越復(fù)雜,用戶與數(shù)據(jù)的交互也越來越頻繁,而很多交互都是臨時性的,沒有必要每一次都要 和服務(wù)器中的模型對象進行交互,但是傳統(tǒng)的jQuery等函數(shù)庫又力不從心,這時MVVM模型就應(yīng)運而生啦。 </p> <p> b.MVVM: 是Model-View-ViewModel的縮寫; </p> <p> M:Model層, V:View層, VM: ViewModel層; </p> <p> c.Model:JavaScript對象/模型, View:HTML代碼/模板,各司其職,完全分離 </p> <p> d.VM層:負責(zé)Model與View之間的交互,完全使用JavaScript進行編寫; </p> <p> e.基本流程: VM層根據(jù)Model數(shù)據(jù)來更新View,或者根據(jù)View來更新Model,這個過程是雙向的,即雙向數(shù)據(jù)綁定; </p> <p> f.服務(wù)器端只負責(zé)更新Model即可,而Model就是一個JavaScript對象,所以服務(wù)器只需要返回可被Model解析的 數(shù)據(jù)即可,例如:json,html等,這樣就完全實現(xiàn)了面向接口/API編程。 </p> <p> g.Vue.js就是一個完全采用了MVVM機制的前端開發(fā)框架,采用從底層向上的漸進式開發(fā)思想,易學(xué)易用! </p> <p> 3. MVVM 的優(yōu)點 </p> <p> a.MVVM 兼容 MVC,可以先創(chuàng)建一個簡單的 View Model,再慢慢遷移。 </p> <p> b.MVVM 使得 app 更容易測試,因為 View Model 部分不涉及 UI。 </p> <p> c.MVVM 雙向綁定技術(shù),當(dāng)Model變化時,View-Model會自動更新,View也會自動變化。很好的做到數(shù)據(jù)的一致性 </p> </div>
添削の先生:查無此人添削時間:2019-05-20 09:19:38
先生のまとめ:完成的不錯。編程有很多設(shè)計模式,多了解,對以后工作幫助很大。繼續(xù)加油。