區別:1、vue佔用空間較小,而angular較大;2、Vue比Angular靈活,可依不同需要去組織專案的應用程式碼;3、vue簡單易學,angular的上手難度較高;4、angular指令是“ng-xxx”,vue指令是“v-xxx”。
本教學操作環境:windows7系統、vue2.9.6&&angular6版,DELL G3電腦。
Angular簡介
Angular是一個JavaScript 框架,最初由Misko Hevery 和Adam Abrons於2009年開發,後來成為了Google公司的專案.
Angular彌補了HTML在建構應用方面的不足,其透過使用識別碼(directives)結構,來擴展Web應用中的HTML詞彙,使開發者可以使用HTML來聲明動態內容,從而使得Web開發和測試工作變得更加容易。
angularjs的特點:
1、資料的雙向綁定:view層的資料和model層的資料是雙向綁定的,其中之一發生更改,另一方會隨之變化,這不用你寫任何代碼!
2、程式碼模組化,每個模組的程式碼獨立擁有自己的作用域,model,controller等。
3、強大的directive可以將許多功能封裝成HTML的tag,屬性或註解等,這大大美化了HTML的結構,增強了可閱讀性。
4、依賴注入,將這種後端語言的設計模式賦予前端程式碼,這意味著前端的程式碼可以提高重複使用性和靈活性,未來的模式可能將大量操作放在客戶端,服務端只提供資料來源和其他客戶端無法完成的操作。
5、測試驅動開發,angularjs一開始就以此為目標,使用angular開發的應用可以輕鬆地進行單元測試和端對端測試,這解決了傳統的js程式碼難以測試和維護的缺陷。
vue簡介
Vue (讀音 /vjuː/,類似 view) 是一套用於建立使用者介面的漸進式JavaScript框架。與其它大型框架不同的是,Vue 被設計為可以自底向上逐層應用。 Vue 的核心函式庫只專注於視圖層,不僅易於上手,也方便與第三方函式庫或既有專案整合。另一方面,當與現代化的工具鏈以及各種支援類別庫結合使用時,Vue 也完全能夠為複雜的單頁應用(SPA)提供驅動。
Vue.js 的目標是透過盡可能簡單的 API 實現回應的資料綁定和組合的視圖元件。
Vue.js 本身不是一個全能框架-它只聚焦在視圖層。因此它非常容易學習,非常容易與其它庫或已有專案整合。另一方面,與相關工具和支援庫一起使用時 ,Vue.js 也能驅動複雜的單頁應用程式。
Vuejs的特點:
1、輕量級的框架
2、雙向資料綁定
3、指令
4、模組化,目前最熱的方式是在專案中直接使用ES6的模組化,結合Webpack進行專案打包。
5、元件化,創造單一component後綴為.vue的文件,包含template(html程式碼),script(es6程式碼),style(css樣式)。
angular和vue的區別
#1、體積和效能
##vue佔用空間更小,例如包含了Vuex Vue Router 的Vue 專案(gzip 之後30kB) ,比angular-cli 產生的預設專案尺寸(~65KB) 還是小得多。 在渲染效能上,這兩個框架都很快,效能上幾乎沒有差別。2、開發效率
都提供了各自的鷹架工具,幫助提高從開發到構建打包的整套過程,另外均可以基於組件化開發,編寫可重複使用的組件,大大較少重複性的工作。但angular憑藉 Typescript 本身比 JavaScript 更工程化的優勢,在都是團隊開發的情況下,angular會更有優勢。3、靈活性
Vue 比起 Angular 更為靈活,可以依照不同的需求去組織專案的應用程式碼。例如,甚至可以直接像引用jquery那樣在HTML中引用vue,然後就只是當成一個前端的模板引擎來用。4、可維護性
我理解的可維護性包含兩個層次,一是程式碼的可讀性,二是可重構性。同樣是因為對TS(能提供靜態型別檢查)的支援不夠全面,使得vue在這兩個層次都有些不足。 vue作者本人也承認vue在TS 的支援上還有所不足,在3.0版本中將會有所改進。5、學習成本高
vue簡單易學,而angular的上手難度較高。 AngularJS的學習成本高,例如增加了Dependency Injection特性,而Vue.js本身提供的API都比較簡單、直覺。6、指令
angular的指令都是ng-xxx,而vueJS的指令都是v-xxx。以上是angular和vue有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!