使用全部新的庫和框架,很難跟上全部這些庫和框架,也就是說,這就須要您決定哪些是值得花時間的。javascript
讓咱們看看人們說什麼:前端
「和Vue.JS一塊兒工做是很愉快的,我發現學習曲線很淺,然而,這純粹是基於個人經驗,如前所述,我過去曾和一些人一塊兒工做過。vue
默認的模板結構工做原理和Angular很是相似,因此有這個背景的開發人員可能會React上手更快。若是React像Vue.js那麼容易學習的話,我真的不會不學習React,它的影響很大。java
「比起React我更喜歡vue.js。在JavaScript領域vue.js是鎮上新來的小子。因此我想說學習的簡單性多是第一。簡潔是設計的基礎。react
Vue是簡單的,它具備不少從Angular1和react來的概念。你可使用它來創建任何系統 - 只是把它包含到HTML文件中。git
React更大,更復雜一點(例如在設置方面)。angularjs
因此若是你想只想學一個框架,而且沒有一個已經創建的系統那就選擇Vue。vue.js很平易近人,提供如何把各類事情作好的更多的結構。若是你還不肯定,二者都試試。也能夠點擊這裏來閱讀,ReactJS vs Vue.js vs AngularJS:編程
https://www.agriya.com/blog/2017/03/08/angularjs-vs-vue-js/bootstrap
「回答你的問題,我認爲Vue.js是瞭解React系統的一個好方法。然而,你看完指南以前你可能會愛上Vue.js。讓我告訴你,整件內容都值得一讀。找個星期六開始試試吧!後端
在你讀個人回答,我很是鼓勵你看看Vue的框架比較。它很是體貼,涉及許多重要的考慮因素。
您想用哪個平臺開發?選擇你本身的毒藥吧。
React是幾乎全部平臺的理想選擇。不管是Web仍是原生開發,React都已經覆蓋並在兩個方向都成熟了。在UI開發方面,在任何上下文中都是一個靈活的開發人員。它甚至進入了虛擬現實。
Vue 2太走向原生。Evan和他的團隊正在與阿里巴巴合做創造Weex,這將容許本地渲染就像React Natvie。Vue 2如今主要集中在Web開發,但也承諾支持其餘平臺。根據Evan的最新的Vue的博客,2017對Weex是重要的一年。
你想多久纔開始開發呢?爲何不今天就開始,而要等幾個星期?
React有陡峭的學習曲線。它的文件和術語在某些概念是不一樣尋常,而凌亂,在Vue中指南,屬性名稱,安裝過程,等一切感受很熟悉,與更普遍的HTML,CSS和ES6標準一致。感謝這兩個框架,他們的社區欣欣向榮。你能夠找到大量的資源來啓動。
我面臨的最大障礙是理解構建工具鏈:Webpack,JSX,個人文本編輯器插件等等。
然而,Vue不須要Webpack,或任何其餘事情。你能夠立刻經過ES5快速的寫應用包括使用你最喜好的軟件包管理器或CDN的框架。這意味着你能夠用CodePen和其餘代碼共享的環境。
React最近推出了create-React-app。你能夠將這個和Vue的命令行工具進行對比。
在專業領域…
Vue一直有大牌公司像gitlab,Laravel,PageKit等採用。
Vue仍然感受像在個人開發週期上新的孩子。然而,許多開發商在我公司(IHS Markit)已經開始採用Vue,在考慮Angular和React過重。
React很受歡迎,並且已經持續好久了。可能更多的企業使用了React。若是你如今找一份新工做,那就記住這一點。
在過去的幾個月裏(降低2016),我看過不少文章說:「爲何咱們選擇vue.js超過React和Angular…」。vue.js得到牽引力,快捷,愈來愈多的人意識到它是多麼容易使用。
再來看看Vue迷…
包括狀態管理和路由!你已經知道了關於Flux/Redux,這就是Vue所提供的:
Vuex是Vue的 Flux/Redux/Elm-inspired的實現,專門針對使用Vue的響應系統。其系統的mutations, getters,actions很是協調,與您的組件集成很容易。不過,若是你更喜歡用Redux,Vue用Revue也是很酷的。不管哪一種方式,知道如何使用狀態管理系統是一種頗有價值的模式。
若是你須要URL路徑和參數Vue-Router是該死的簡單而強大。只要檢查一下文檔就ok了。
其餘值得注意的事情…
Vue的文檔是一個夢。我不能告訴足夠多的人它的指南和API參考有多大。Evan You(做者和項目負責人)有一種將現代開發提供給門外漢的方式。即便是經驗豐富的開發人員,這也是使人耳目一新的。
寫單文件vue組件感受很天然 - 我歷來沒有回頭,由於。這不須要Webpack,但沒有恐懼,Vue提供了一個很是方便的命令行工具來幫助你產生很小的安裝骨幹項目。若是你喜歡Browserify,也不用擔憂。煉獄,你能夠寫你本身的CLI模板,若是你想要的話!提供的模板很是靈活。
Vue 2支持服務器端渲染,幫你作SEO,讓你的網站能夠呈現給禁用javascript的人。
最後,不斷有什麼給我印象深入的東西,再次回來的Vue.js是其突出的社區,Evan和他的貢獻很專業,它的易用性,其顯而易見的對齊與Web部件標準。我被這個項目的成功所震驚,創造出幾乎任何我能夢想獲得的前端都是多麼使人愉快的事情。
我也來這兒。
我花了大約一年的時間來處理這個問題。我最近換了Vue在過去的幾個月裏,我沒有回頭。關於Vue的一些事情讓我沉迷過分了,即:
JSX - 我討厭JSX。它老是花費我幾秒鐘的時間,若是不是幾分鐘就萬幸了。我每次打開項目要接受這個事實,我一直在尋找一個JavaScript組件包括風格、傳統的JavaScript方法和UI元素都支持的一個模塊化的野獸。它很快就老化了。
重命名傳統HTML屬性 - 傳統HTML類和風格的元素屬性。哦,React也能作到,你所要作的就是確保你全部的類的屬性稱爲類名和樣式屬性沒有字符串值了。想象一下,試圖建立一個基於購買的現有主題的網站。把它換成React就像用刀子刺眼球同樣。而對Vue,現有的HTML只是普通的工做。你想「reactify」嗎?繼續,但這不是React中所要求的。
打包須要 - 因此React就只是UI層嗎?他們是正確的;你甚至也能夠不須要WebPack或任何其餘的打包機。可是若是沒有它們,你能夠嘗試建造任何實質性的東西,你都會很難過的。你開始拉動左右,使功能和全部那些假定WebPack包。若是你只是寫「hello world」,而後只使用React能夠。別的,你就得開始閱讀全部的打包內容。
「我用Angular1一年多一點,而後切換到React。我已經看了Vue幾回卻歷來沒有創建任何東西,那就是說我什麼也沒聽到,但偉大的事情,從外觀上來看,它是很容易。
我準備採起行動,緣由有3:
這是目前最流行的:這很重要,最受歡迎的是它擁有最多的在線資源,更好的工做機會,更有可能得到長期的成功(除非他們使用谷歌的Angular1)。
它是通用的:有庫容許您使用React來編寫移動甚至桌面應用程序(儘管我尚未親自嘗試構建桌面應用程序)。Vue也將推出本身的混合移動框架,但即便當它來到的時候,我嚴重懷疑它會遇上React,有多少人考慮重頭開始考慮到RN有及其社區的規模。
這很複雜,很難學:我不一樣意大多數人的觀點,說這個不是學習React的好理由,並且其實是我喜歡React的緣由之一。學習React會讓你成爲更好的JavaScript開發人員。React很難,由於:
它使用了不少中間高級JS概念。像一個深刻了解的對象,「this」關鍵詞和一些功能的編程概念是必要的工做,React的效率(最後一個是更相關的若是你使用Redux)。它也將更可能迫使你學習ES6若是你還不知道。
你須要的工具只有1件套,因此你必須依靠終極版的其餘庫。開始時這可能很痛苦,但它教你如何混合、匹配和鏈接不一樣的庫。也讓你可以定製你的工具,你認爲合適或甚至將React放進Angular/Vue應用若是你只想用它在你的應用程序的某些部分的優點。
它一般用到構建工具像WebPack(雖然它實際上並不須要他們)。Vue是創建更加容易沒有編譯工具,可是至關多的任何真實世界的應用都將是最終使用編譯工具,不管如何,這是惟一的一個優點,若是你還在學習,只是想跳過麻煩去更快建設。即便是這樣的話,你仍然能夠經過使用項目生成器,好比建立React應用程序來跳過全部配置並直接構建。
前端開發的問題是js生態系統可能很是不穩定,框架在不斷變化。所以,我認爲,不是尋找最簡單、最強大、最流行的框架,而是做爲一個開發人員長期學習有用的東西(儘管React也有最流行的東西),這可能更有用。即便React最終變得過期,我也不會對學習它感到後悔,由於當我開始學習JavaScript的時候,我知道的比我想知道的還要多。
「這些天我不多作網頁,大多工做在後端數據處理、網絡I/O和分佈式通訊。
一年多一點之前,我想要的是一個實時的Web UI想象一些我對服務器端的數據,我想用SignalR。我回到了一些流行的框架,有一個很是簡單的思惟方式:「我能夠閱讀‘入門’,而後在15分鐘內開始一些基本的工做嗎?」。
我最終選擇了Vue,主要是由於它使用簡單的對象模型和我真的只是過去的東西我能夠從SignalR直接進入並顯示。我所嘗試的幾乎全部其餘的東西圍繞着數據都有某種類型的打包器/代理,這意味着你必須運行一些映射纔可使模型正常工做。我幾乎決定用Mithril,可是當我發現這只是個人須要與Vue重合更多。其實我真的想用React,但Vue只是更平易近人,我不須要花費額外的時間學習React。
然而,真正的考驗是幾個月後,我去修改和添加更多的功能到個人簡單調試UI中。我幾乎能夠當即拿起它,甚至作了至關大的改動。
與個人經歷相比,Ember。咱們有一個大的應用程序基於Ember編寫,每一次我試圖作的是我認爲應該是一個簡單的改變(不接觸的幾個月後),我花了比我想象的要長5倍,我花了大部分的時間與它做戰以前實現我忘了5個的地方,你必須修改參考額外的依賴或其它一些一樣平凡但真氣人的細節。
你能夠學習Vue在分鐘的基礎知識,並在幾個小時內很內行。這是否是不少的框架,能夠說,這是一個被嚴重低估的好處。
這篇文章最初發表在bootstrapbay博客 - https://bootstrapbay.com/blog/vuejs-vs-reactjs/
各位,大家怎麼看?在這場辯論中,請隨意點兒,別忘了分享你的體驗,這樣其餘人就能瞭解到你的想法。
匯智網(www.hubwiz.com,大量最新的vue/react/angular課程),小智翻譯。