Vue的優缺點


使用vue.js做開發快兩年了,對vue的優缺點有一點自己的見解,跟大神比不了,但是面試基本夠用

  vue在國內能被廣泛使用的首要原因是它是基於mvvm框架做開發的,mvvm是前端開發中一種很有影響力的模式,在mvvm中,m代表model 即模型,model中集中粗出變量以及變量的值,v代表view 即視圖,集中存儲html和css,vm是二者名字的結合,viewmodel,我猜測這樣命名應該是找不到合適的名字替代了~~,很多人沿用mvc的controller對mvvm的vm進行中文命名,mvc也是控制器,mvvm也是控制器,說起vm可老厲害了,厲害在哪呢,又是做什么的呢,vm是銜接同步view和model的數據交互控制器,源代碼中的什么數據劫持,訂閱者-發布者,這么復雜的定義,就留給大神和vue項目組研究吧,我們不要沒研究透,反而越來越糊塗,vue有量大系統,第一,通知系統,第二,虛擬dom樹,vue對象創建后,會自動引入data對象,data就是模型數據,data中的每一個變量都會自動添加兩個訪問器屬性_set()和_get(),調用變量實際上是調用的訪問器屬性,當數據發生變化后,就會調用訪問器屬性,調用訪問器屬性就會觸發通知系統,vm獲得通知后就對虛擬dom樹進行遍歷,並修改需要修改的數據,然后同步到view中,這就是mvvm或者說vue事項雙向綁定的原理,虛擬dom樹是vm掃描真實dom樹創建的一棵極其精簡的dom樹,只保存變化和可能變化的元素,一點多余的東西都沒有,所以遍歷極快,而且還封裝了dom的重復的增刪改查操作,所以能極大地簡化代碼,這個也符合vue是一個輕量級框架的名號。

vue做SPA應用的用戶體驗還是不錯的,性能也比較好,開發起來也比較簡單,也能實現前后端分離

vue的大量封裝既是優點又是缺點,做seo那叫一個累啊,報錯又不明顯,復雜的頁面代碼非常累贅,加載效率么--誰用誰知道,就和用了2M的寬帶似的

多提一嘴mvc和mvvm的區別吧,mvc是比較早的偏后端開發的模式,而且各做各的事,互不干擾,想做雙向綁定就只能dom模擬,但是mvvm是實現了響應式的雙向數據綁定的,而且還是基於mvc模式演變出來的,你能做的我也能做,你沒實現的我卻能實現,所以mvvm模式更受前端市場的歡迎!

面試夠用,大神手下留情~~

轉載的麻煩貼的原地址哈,尊重一下他人勞動成果!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM