Vue.js與Angular.js不同之處

Vue.js與Angular.js不同之處

Vue.js與Angular.js不同之處

Vue 的一些語法和 AngularJS 的很相似 (例如 v-if vs ng-if)。因為 AngularJS 是 Vue 早期開發的靈感來源。然而,AngularJS 中存在的許多問題,在 Vue 中已經得到解決

複雜性

在 API 與設計兩方面上 Vue.js 都比 AngularJS 簡單得多,因此你可以快速地掌握它的全部特性並投入開發

靈活性與模塊化

Vue.js 是一個更加靈活開放的解決方案。它允許你以希望的方式組織應用程序,而不是在任何時候都必須遵循 AngularJS 制定的規則,這讓 Vue 能適用於各種項目。我們知道把決定權交給你是非常必要的。

這也就是為什麼我們提供 webpack template,讓你可以用幾分鐘,去選擇是否啟用高級特性,比如熱模塊加載、linting、CSS 提取等等。

數據綁定

AngularJS 使用雙向綁定,Vue 在不同組件間強制使用單向數據流。這使應用中的數據流更加清晰易懂。

敲黑板,什麼是雙向綁定與單向綁定

雙向綁定:雙向綁定在一些需要實時反應用戶輸入的場合會非常方便(比如多級聯動菜單)。但通

常認為複雜應用中這種便利比不上引入狀態管理帶來的優勢。

單向綁定:單向綁定使得數據流也是單向的,對於複雜應用來說這是實施統一的狀態管理的前提。

指令與組件

在 Vue 中指令和組件分得更清晰。指令只封裝 DOM 操作,而組件代表一個自給自足的獨立單元——有自己的視圖和數據邏輯。在 AngularJS 中兩者有不少相混的地方。

開發者/團隊

Angular

2016 年 release,核心由 Google 開發,周圍有些生態環境組件由 Netflix,Babel 社區,微軟等相關開發者開發,參與人數比較多,Google 後期不維護這個項目的可能性比較小,但是不能排除部分框架內使用的第三方組件(如 zone.js )後期缺乏維護的可能性

Vue 2016 年 release,由尤雨溪主導開發,目前作者已經全職開發 Vue,但是也不能完全排除後期作者停止維護的可能性,目前 issue 少,報告的 bug 都修復了

官方使用語言

Angular

Typescript,官方提供 compiler-cli 把框架代碼從 Typescript 直接編譯到 Javascript 的 AST 語法樹,屬於對 Typescript 的深度支持

Vue ES6+


分享到:


相關文章: