摘要:論現(xiàn)在前端最熱門的開發(fā)方式,那必然是組件化開發(fā)。而在組件化開發(fā)里面最熱門的框架則是的。在模式中,的功能主要是監(jiān)聽層的事件,例如用戶點(diǎn)擊用戶提交輸入等操作,并根據(jù)層不同的事件響應(yīng)不同的操作。組件化繼續(xù)借用一張官網(wǎng)的圖片。
論現(xiàn)在前端最熱門的開發(fā)方式,那必然是組件化開發(fā)。而在組件化開發(fā)里面最熱門的框架則是 Facebook 的 React 。但是 React 的學(xué)習(xí)成本比較高,如果對于中小型的項(xiàng)目,使用 Vue 或許是不錯的選擇。
MVVM借用一下 Vue 官網(wǎng)的圖片, ViewModel 是連接 View 與 Model 兩層的媒介。
在 MVC 模式中, Controller 的功能主要是監(jiān)聽 View 層的事件,例如用戶點(diǎn)擊、用戶提交輸入等操作,并根據(jù) View 層不同的事件響應(yīng)不同的操作。可能會從后端(Model)讀取/寫入數(shù)據(jù),也有可能不與后端進(jìn)行交互。
而后,Controller又會根據(jù)既定的業(yè)務(wù)流程,或根據(jù) Model 返回的值來對 View 層進(jìn)行更新。這樣的話我們所有的邏輯基本上都集中在了Controller中。
ViewModel 將自身的數(shù)據(jù)與 View 層雙向綁定了起來,當(dāng) View 有變動的時候,會反映到 ViewModel 中,并觸發(fā)相應(yīng)的處理函數(shù),這些處理函數(shù)(不管是單純的數(shù)據(jù)處理或者從后端請求數(shù)據(jù)),會去更新 ViewModel 的數(shù)據(jù),而 ViewModel 的數(shù)據(jù)變動會實(shí)時反映到 View 當(dāng)中。
所以,不管是 View 還是 Model 都讀寫的是 ViewModel 的數(shù)據(jù),View 層的邏輯交給了 View 層,而數(shù)據(jù)處理的邏輯交給了 Model 層。ViewModel 算是在兩層之間提供了一個接口。
組件化繼續(xù)借用一張 Vue 官網(wǎng)的圖片。在以前我們開發(fā)的時候,如果想復(fù)用一個部分,例如表格,我們會使用 JS 來生成HTML,并且根據(jù)給定的容器、數(shù)據(jù)、配置信息來生成 HTML 片段,插入容器當(dāng)中。之后得再引用表格相關(guān)的 CSS。
而 Vue 的組件包括模板(HTML)、邏輯(JS)、樣式(CSS)三部分。只要給這個組件相應(yīng)的數(shù)據(jù),這個組件便是一個完備的組件,各種該組件相關(guān)的事件處理,數(shù)據(jù)請求,UI更新都在組件中完成。
使用一個 Vue 組件也非常方便,除了申明以外,直接在 HTML 中引入自定義標(biāo)簽,標(biāo)簽名為組件的名字,使用標(biāo)簽屬性來給組件傳遞數(shù)據(jù)。
使用 Webpack 以后,Vue 每一個組件可以封裝在獨(dú)立的文件中,包括、
+Webpack
在 Webpack 中,我們只需要使用 vue-loader 處理所有的 *.vue 文件即可,需要用到組件的時候,直接 require,并在components屬性里面注冊即可使用。 不要忘了在入口函數(shù)中初始化 Vue 點(diǎn)擊 _這里_ 開始學(xué)習(xí) Vue 吧!
var Vue = require("vue");
var c1 = require("xxx/c1.vue");
var c2 = require("xxx/c2.vue");
new Vue({
el: "#app",
components: {
"c1": c1,
"c2": c2
}
});
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/80416.html
摘要:就是一個用于搭建類似于網(wǎng)頁版知乎這種表單項(xiàng)繁多,且內(nèi)容需要根據(jù)用戶的操作進(jìn)行修改的網(wǎng)頁版應(yīng)用。單頁應(yīng)用程序顧名思義,單頁應(yīng)用一般指的就是一個頁面就是應(yīng)用,當(dāng)然也可以是一個子應(yīng)用,比如說知乎的一個頁面就可以視為一個子應(yīng)用。 最近在逛各大網(wǎng)站,論壇,以及像SegmentFault等編程問答社區(qū),發(fā)現(xiàn)Vue.js異常火爆,重復(fù)性的提問和內(nèi)容也很多,樓主自己也趁著這個大前端的熱潮,著手學(xué)習(xí)了一...
摘要:中文官網(wǎng)英文官網(wǎng)組織發(fā)出一個問題之后,不要暫時的離開電腦,如果沒有把握先不要提問。珍惜每一次提問,感恩每一次反饋,每個人工作還是業(yè)余之外抽出的時間有限,充分準(zhǔn)備好應(yīng)有的資源之后再發(fā)問,有利于問題能夠高效質(zhì)量地得到解決。 Vue.js資源分享 更多資源請Star:https://github.com/maidishike... 文章轉(zhuǎn)自:https://github.com/maid...
摘要:前言月份開始出沒社區(qū),現(xiàn)在差不多月了,按照工作的說法,就是差不多過了三個月的試用期,準(zhǔn)備轉(zhuǎn)正了一般來說,差不多到了轉(zhuǎn)正的時候,會進(jìn)行總結(jié)或者分享會議那么今天我就把看過的一些學(xué)習(xí)資源主要是博客,博文推薦分享給大家。 1.前言 6月份開始出沒社區(qū),現(xiàn)在差不多9月了,按照工作的說法,就是差不多過了三個月的試用期,準(zhǔn)備轉(zhuǎn)正了!一般來說,差不多到了轉(zhuǎn)正的時候,會進(jìn)行總結(jié)或者分享會議!那么今天我就...
摘要:特意對前端學(xué)習(xí)資源做一個匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 特意對前端學(xué)習(xí)資源做一個匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 本以為自己收藏的站點(diǎn)多,可以很快搞定,沒想到一入?yún)R總深似海。還有很多不足&遺漏的地方,歡迎補(bǔ)充。有錯誤的地方,還請斧正... 托管: welcome to git,歡迎交流,感謝star 有好友反應(yīng)和斧正,會及時更新,平時業(yè)務(wù)工作時也會不定期更...
閱讀 3923·2021-09-09 09:33
閱讀 1787·2021-09-06 15:14
閱讀 1925·2019-08-30 15:44
閱讀 3084·2019-08-29 18:36
閱讀 3770·2019-08-29 16:22
閱讀 2098·2019-08-29 16:21
閱讀 2539·2019-08-29 15:42
閱讀 1655·2019-08-29 11:00