前端 - angular和react各自有什么優缺點
問題描述
angular和react各自有什么優缺點?怎么對兩者進行取舍?目前是有個大的項目要重構,因為之前沒有使用過市面上的各種MV*框架,所有現在在考慮是否要使用react來管理view,但是畢竟只是view,所以在想是不是不直接上angular。
問題解答
回答1:其實我突然覺得尤小右在vue官網的介紹很好啊,要不看看:
說缺點,
Angular, 大量 Java 的味道, 框架體積大, 概念多, 語法復雜, 后面還引入 TypeScript, 從 1 升級到 2 幾乎成了一個新的框架, 給人太臃腫的感覺, 前端的問題很簡單為啥搞那么復雜.
React, 大量的 Facebook 的味道, JSX, Webpack, Babel 一路做下來概念是約越到后面越多. 而且最近覺得社區太激進了, 像是生態還沒有搞好就吸引了一大堆人沖進去, 逐步夾帶各種私貨到里邊.
Vue, 小右一個人畢竟坑不過大公司啊..
回答3:Angular 的看這里:https://ruby-china.org/topics/27590#reply7
React 不是框架,沒有可比性。只是做幾個頁面的中小項目用 React 就好了,上了規模的項目如果你自己沒有架構能力,就乖乖用 Angular。實際上 Angular 在很多層面都比較落后(或者說成熟),這我在上面的鏈接里都說得差不多了,然而對普通開發者來說不需要考慮這些(等你意識到這些之后你就不普通了,那時候你自然會有自己的判斷)。
回答4:居然有人說React不是框架 強行輕量化 你用的時候難道不是react-route+redux+react全套一起用
angular1說實在的,沒有什么缺點,一個五年的框架,該踩的坑都踩完了,想做雙向綁定,除樂avalon那種用vbs玩花樣,只有dirty check可以兼容ie8至于架構,設計復雜不是他的錯啊,本身angular就是大而全的框架,唯一少的就是狀態管理
然后react,也是那樣,配上redux這個東西,實現狀態管理,未來大應用的方向,話說angular2也能redux了
再有我不認為ecma6是優勢 語法就是語法糖,沒有什么本質的改變(真的是質變的是ie9+支持getter/setter了)java那么復雜的語言都寫習慣了區區js而已真的有人認為react本身(不算webpack)那種js html混寫很好么?太反人類了吧
回答5:關于Angular和React,其區別其實非常之大。Angular是一個MVC框架,因為其涵蓋MVC全部的內容,所以它幾乎能代替大部分后端的工作,特別是其雙向數據綁定等功能,可以說使用相當方便(但學習成本也高)。但缺陷就是Angular過重,前端大部分情況下并非需要一個完整的MVC框架,因為大部分邏輯應該交給后端來完成。這也導致了Angular永遠無法登上臺面,一個正常的網站不會容忍一個為了功能全面而大幅消耗性能的框架。所以Angular大部分時候只能藏于身后,在一些后臺管理頁面中使用。React則不同,其最大的優勢就是其輕量級,Facebook看到了前端使用MVC框架的劣勢,而前端大部分時候只有View的操作,所以React只著重于View層的開發。特別是其Virtual DOM的思維,大幅提升前端頁面渲染的速度。由于其輕量級,所以得以在大流量網站上使用,例如React研發所針對的Instagram上已經使用,還有阿里版變種的Weex也用在淘寶等網站有所使用。
兩者最大的區別就是輕和重的區別,建議就是,大訪問量輕邏輯的頁面用React,小訪問量重邏輯的頁面用Angular。
相關文章:
1. javascript - node.js promise沒用2. node.js - nodejs如何發送請求excel文件并下載3. 為什么我ping不通我的docker容器呢???4. 算法 - python 給定一個正整數a和一個包含任意個正整數的 列表 b,求所有<=a 的加法組合5. android 如何實現如圖中的鍵盤上的公式及edittext的內容展示呢6. golang - 用IDE看docker源碼時的小問題7. java - 我在用Struts2上傳文件時,報以下錯誤怎么回事?8. PHP注冊功能9. MySQL如何實現表中再嵌套一個表?10. mysql - 求SQL語句
