vue框架(mvvm)
優點:
- 輕量級框架,語法簡單,學習成本低
- 雙向數據綁定
- 組件化開發
- 數據和結構的分離
- 虛擬DOM
- 運行速度快
- 靈活漸進式框架
缺點:
- 不支持IE8
Vue和Angular的對比
- 靈活性和模塊化
-
Vue.js 是一個更加靈活開放的解決方案。它允許你以希望的方式組織應用程序,而不是在任何時候都必須遵循 AngularJS 制定的規則,這讓 Vue 能適用於各種項目。我們知道把決定權交給你是非常必要的。
-
這也是爲什麼我們提供了一個基於 Vue.js 進行快速開發的完整系統。Vue CLI 旨在成爲 Vue 生態系統中標準的基礎工具。它使得多樣化的構建工具通過妥善的默認配置無縫協作在一起。這樣你就可以專注在應用本身,而不會在配置上花費太多時間。同時,它也提供了根據實際需求調整每個工具配置的靈活性。
-
- 數據綁定
- AngularJS 使用雙向綁定,Vue 在不同組件間強制使用單向數據流。這使應用中的數據流更加清晰易懂。
- 指令與組件
- 在 Vue 中指令和組件分得更清晰。指令只封裝 DOM 操作,而組件代表一個自給自足的獨立單元——有自己的視圖和數據邏輯。在 AngularJS 中,每件事都由指令來做,而組件只是一種特殊的指令。
- 運行時性能
-
Vue 有更好的性能,並且非常非常容易優化,因爲它不使用髒檢查。
-
在 AngularJS 中,當 watcher 越來越多時會變得越來越慢,因爲作用域內的每一次變化,所有 watcher 都要重新計算。並且,如果一些 watcher 觸發另一個更新,髒檢查循環 (digest cycle) 可能要運行多次。AngularJS 用戶常常要使用深奧的技術,以解決髒檢查循環的問題。有時沒有簡單的辦法來優化有大量 watcher 的作用域。
-
Vue 則根本沒有這個問題,因爲它使用基於依賴追蹤的觀察系統並且異步隊列更新,所有的數據變化都是獨立觸發,除非它們之間有明確的依賴關係。
-
有意思的是,Angular 和 Vue 用相似的設計解決了一些 AngularJS 中存在的問題。
-
Vue和React渲染速率
-
React 和 Vue 都是非常快的,所以速度並不是在它們之中做選擇的決定性因素。對於具體的數據表現,可以移步這個第三方 benchmark,它專注於渲染/更新非常簡單的組件樹的真實性能。
VUE生態
- Vue組件庫(UI)
- element - 餓了麼出品的Vue2的web UI工具套件
- iview - 基於 Vuejs 的開源 UI 組件庫
- mint-ui - Vue 2的移動UI元素
- vue-core-image-upload - 輕量級的vue上傳插件
- 構建工具
- webpack 現代 JavaScript應用程序的靜態模塊打包器
- VUE開發和工具
- vuex Vue.js 應用程序開發的狀態管理(核心)
- vue-router 構建單頁應用下的路由管理器(核心)
- Vue.js 服務器端渲染(核心)
- vue-cli Vue腳手架工具
- babel 將 ECMAScript 2015+ 版本的代碼轉換爲向後兼容的 JavaScript 語法,以便能夠運行在當前和舊版本的瀏覽器或其他環境中
- postcss css預處理工具
- vue-axios - 將axios整合到VueJS的封裝
- lazy-vue - 懶加載圖片
- 開發規範
- eslint 代碼編碼格式檢查工具