來源:博客園 | 作者: | 日期:2022-01-18 09:16:18 | 閱讀: 6823
1、輕量級框架
只關注視圖層,是一個構建數(shù)據(jù)的視圖集合,大小只有幾十kb
Vue.js通過簡潔的API提供高效的數(shù)據(jù)綁定和靈活的組件系統(tǒng)
2、簡單易學
國人開發(fā),中文文檔,不存在語言障礙,易于理解和學習
3、雙向數(shù)據(jù)綁定
也就是所謂的響應式數(shù)據(jù)綁定。這里的響應式不是@media 媒體查詢中的響應式布局,而是指vue.js會自動對頁面中某些數(shù)據(jù)的變化做出同步的響應。
也就是說,vue.js會自動響應數(shù)據(jù)的變化情況,并且根據(jù)用戶在代碼中預先寫好的綁定關系,對所有綁定在一起的數(shù)據(jù)和視圖內容都進行修改。而這種綁定關系,就是以input 標簽的v-model屬性來聲明的,因此你在別的地方可能也會看到有人粗略的稱vue.js為聲明式渲染的模版引擎。
這也就是vue.js最大的優(yōu)點,通過MVVM思想實現(xiàn)數(shù)據(jù)的雙向綁定,讓開發(fā)者不用再操作dom對象,有更多的時間去思考業(yè)務邏輯。
4、組件化
在前端應用,我們是否也可以像編程一樣把模塊封裝呢?這就引入了組件化開發(fā)的思想。
Vue.js通過組件,把一個單頁應用中的各種模塊拆分到一個一個單獨的組件(component)中,我們只要先在父級應用中寫好各種組件標簽(占坑),并且在組件標簽中寫好要傳入組件的參數(shù)(就像給函數(shù)傳入?yún)?shù)一樣,這個參數(shù)叫做組件的屬性),然后再分別寫好各種組件的實現(xiàn)(填坑),然后整個應用就算做完了。
5、視圖,數(shù)據(jù),結構分離
使數(shù)據(jù)的更改更為簡單,不需要進行邏輯代碼的修改,只需要操作數(shù)據(jù)就能完成相關操作
6、虛擬DOM
現(xiàn)在的網(wǎng)速越來越快了,很多人家里都是幾十甚至上百M的光纖,手機也是4G起步了,按道理一個網(wǎng)頁才幾百K,而且瀏覽器本身還會緩存很多資源文件,那么幾十M的光纖為什么打開一個之前已經(jīng)打開過,已經(jīng)有緩存的頁面還是感覺很慢呢?這就是因為瀏覽器本身處理DOM也是有性能瓶頸的,尤其是在傳統(tǒng)開發(fā)中,用JQuery或者原生的JavaScript DOM操作函數(shù)對DOM進行頻繁操作的時候,瀏覽器要不停的渲染新的DOM樹,導致頁面看起來非??D。
而Virtual DOM則是虛擬DOM的英文,簡單來說,他就是一種可以預先通過JavaScript進行各種計算,把最終的DOM操作計算出來并優(yōu)化,由于這個DOM操作屬于預處理操作,并沒有真實的操作DOM,所以叫做虛擬DOM。最后在計算完畢才真正將DOM操作提交,將DOM操作變化反映到DOM樹上。
7、運行速度更快
像比較與react而言,同樣都是操作虛擬dom,就性能而言,vue存在很大的優(yōu)勢
蘭州網(wǎng)站建設,甘肅制作網(wǎng)站,蘭州點石網(wǎng)絡 版權所有 ?2018-2024 隴ICP備12000250號 甘公網(wǎng)安備: 62010002000051