優點為:1、建立動態Web應用程式變得更加容易;2、可重複使用元件;3、效能增強;4、相容性好;5、對SEO友善等。缺點為:React的目標是UI元件,並不是完整的框架,基本上都需要加上ReactRouter和Flux才能寫大型應用程式。
本教學操作環境:Windows7系統、react17.0.1版、Dell G3電腦。
React是一套JavaScript Web函式庫,由Facebook打造而成且主要用於建立高效能及響應式使用者介面。 React負責解決其它javascript框架所面對的一大常見難題,即對大規模資料集的處理。能夠使用虛擬DOM並在發生變更時利用補丁安裝機制只對DOM中的dirty部分進行重新渲染,React得以實現遠超其它框架的速度表現。
React的優點
#1、建立動態Web應用程式變得更加容易
#建立一個專門使用HTML字串的動態web應用程式是一件棘手的事情,因為它需要複雜的編碼,但是React JS解決了這個問題並使其變得更容易。它提供更少的編碼並提供更多的功能。它利用JSX(JavaScript擴充),這是一種特殊的語法,允許HTML引號和HTML標記語法來呈現特定的子元件。它還支援建置機器可讀程式碼。
2、可重複使用元件
ReactJS web應用程式由多個元件組成,每個元件都有自己的邏輯和控制項。這些元件負責輸出一小段可重複使用的HTML程式碼,這些程式碼可以在任何需要的地方重複使用。可重複使用程式碼有助於使應用程式更容易開發和維護。這些組件可以與其他組件嵌套,從而允許用簡單的構建塊構建複雜的應用程式。 ReactJS使用基於虛擬DOM的機制來填入HTML DOM中的資料。虛擬DOM的工作速度很快,因為它只更改單一DOM元素,而不是每次都重新載入完整的DOM。
3、效能增強
ReactJS透過虛擬DOM提高了效能。 DOM是一個跨平台和程式設計API,它處理HTML、XML或XHTML。大多數開發人員在更新DOM時都會遇到這個問題,這會降低應用程式的效能。 ReactJS透過引入虛擬DOM解決了這個問題。 React虛擬DOM完全存在於記憶體中,是web瀏覽器DOM的一個表示。因此,在編寫React元件時,我們並沒有直接向DOM寫入。相反,我們編寫的虛擬元件會將react轉換為DOM,從而獲得更流暢、更快的效能。
4、相容性好
例如使用RequireJS來載入和打包,而Browserify和Webpack適用於建立大型應用。它們使得那些艱難的任務不再讓人望而生畏。
5、以SEO友善著稱
傳統的JavaScript框架在處理SEO時有一個問題。搜尋引擎通常在閱讀大量javascript應用程式時遇到麻煩。許多web開發人員經常抱怨這個問題。 ReactJS解決了這個問題,幫助開發人員在各種搜尋引擎上輕鬆導航。這是因為response .js應用程式可以在伺服器上運行,而虛擬DOM將作為常規web頁面呈現並返回到瀏覽器。
6、同構、純粹的javascript
因為搜尋引擎的爬蟲程式所依賴的是服務端回應而不是JavaScript的執行,預先渲染你的應用程式有助於搜尋引擎優化。
7、測試程式碼的範圍
ReactJS應用程式非常容易測試。它提供了一個範圍,在這個範圍內,開發人員可以在本地工具的幫助下測試和偵錯他們的程式碼。
React的劣勢:
#不適合單獨做一個完整的框架
React是目標是UI元件,通常可以和其它框架組合使用,目前不適合單獨做一個完整的框架。 React 即使配上 Flux 的組合,也不能稱之一個完整的框架,例如你想用Promise化的AJAX?對不起沒有,自己找現成的庫去。而且第三方元件遠遠不如Angular多。 React本身只是一個V而已,所以如果是大型專案想要一套完整的框架的話,也許還需要引入Flux和route相關的東西。而Angular在這方面提供的東西比React多多了.
【相關推薦:Redis影片教學】
以上是react有哪些優缺點的詳細內容。更多資訊請關注PHP中文網其他相關文章!