什么是vue
vue是尤雨溪在2014年發布的一個漸進式的js框架,它有著雙向綁定的特性,同時它的虛擬dom技術讓性能得到大大提升。最重要的就是它是漸進式的應用,你可以在你的項目中逐步地引入它,還有最重要的一點,它是開源的,并且一直在改進,目前最新的版本3更是讓很多人為此迷之瘋狂。
什么是React
React是facebook開發出來的用于web開發的JAVAScript庫,它主要用于元素的交互。它最大的特點就是他的組件功能,它將網頁元素分成了一個個組件,這樣各個組件可以互相組合,增加了復用性,它也是支持虛擬dom的。
性能對比
兩者都采用虛擬節點和懶加載,同時它們也都使用共享節點技術,因此兩者的性能差不多。
Vue在啟動速度和內存占用方面略微領先React,但是在運行狀態方面,React要領先一些。
Vue采用標記來跟蹤記錄組件依賴,這樣它可以有更高的刷新率。
Vue的生態
vue有自己的社區,有自己的狀態管理插件vuex,有自己的靜態文件生成器vuepress,有路由插件,也支持和Nuxt完美融合。
React生態
React有著facebook這個金主爸爸,因此它的發展是迅猛的,它有著強大的社區。 它有著移動端的組件 react-native. 它也有路由組件react-router,它也有狀態管理組件redux. 它有著豐富的UI庫。 總之,react的生態圈非常龐大,它是支持服務器端渲染的。
Vue更適合的場景
- 對于應用構建的速度有著要求的時候
- 喜歡干凈簡潔代碼的項目
- 現有項目快速遷移的時候
React更適合的場景
- 需要開發一個移動端應用的時候
- 更喜歡使用組件來構建應用的時候
- 企業應用或者一些大型項目中
如何選擇
軟件編程中被人們說得最多的一句話就是沒有銀彈,也就是說沒有一種方案可以解決所有問題,每個場景都有每個場景最適合的選擇,對于一個初學者來說,vue入門更快一些,而react可能會稍微復雜一些,但是如果你學會了vue,再去學react,你會發現react其實也并不復雜。
其實很多時候選擇什么框架并不是我們能決定的,很多時候是公司決定的,當你去一個以vue為主的公司中,那么你可能就需要學習使用vue,同理,如果你去的公司項目使用的是react,那么你只能選擇接受學習react,否則你可能失去那份工作。