題外話
本篇分享不能幫助你入門vue,入門的文章也是無意義的,官方文檔http://cn.vuejs.org/v2/guide/ 已經(jīng)寫的不能再清晰了。希望我們勇敢的主動地給自己創(chuàng)造實踐的機(jī)會。
手里有一個功能還不是很多的PC端頁面,考慮到下一個版本,要把IOS,安卓和公眾號上擁有的功能也要添加到PC上,便在周三開始了解Vue,周末花了些時間,做了到vue的改版。
本篇簡單記錄下這次經(jīng)歷。Vue并不是MVVM的框架,而是MVVM中的VM—ViewModel.對接口數(shù)據(jù)的獲取還是要依賴于ajax,或者使用vue為我們提供的可選組件之一vue-loader。
在使用Vue之前,我自己在使用JS三層的概念,在渲染和模板方面使用了tmpl.js這個比較古老的框架,其實在關(guān)注點(diǎn)分離等解耦問題上,也有很明顯的效果。詳情可以到這個鏈接:http://www.cnblogs.com/tdws/p/6024916.html。
在初步設(shè)計項目的時候,由于比較著急并且缺乏整體的考慮,有很多可以公用的模塊沒有單獨(dú)提出來并封裝。這次想給自己一個Vue初步入門的機(jī)會,便主動將PC改版。在模塊的封裝上,主要使用了Vue的組件的功能。Component是 Vue.js 最強(qiáng)大的功能之一。組件可以擴(kuò)展 HTML 元素,封裝可重用的代碼。在較高層面上,組件是自定義元素, Vue.js 的編譯器為它添加特殊功能。在有些情況下,組件也可以是原生 HTML 元素的形式,以 is 特性擴(kuò)展——摘自Vue文檔。
我支持在JS代碼中,各個代碼塊盡量不包含重復(fù)的內(nèi)容,有重復(fù)的,則應(yīng)采取合適的方式進(jìn)行公用。下面是我的一段代碼分享,體會思路就好。
這是組