React(有時(shí)叫React.js或ReactJS)是一個(gè)為數(shù)據(jù)提供渲染為HTML視圖的開源JavaScript 庫。
React 起源于 Facebook 的內(nèi)部項(xiàng)目,因?yàn)樵摴緦κ袌錾纤?JavaScript MVC 框架,都不滿意,就決定自己寫一套,用來架設(shè)Instagram 的網(wǎng)站。做出來以后,發(fā)現(xiàn)這套東西很好用,就在2013年5月開源了。React視圖通常采用包含以自定義HTML標(biāo)記規(guī)定的其他組件的組件渲染。React為程序員提供了一種子組件不能直接影響外層組件("data flows down")的模型,數(shù)據(jù)改變時(shí)對HTML文檔的有效更新,和現(xiàn)代單頁應(yīng)用中組件之間干凈的分離。
它由Facebook、Instagram和一個(gè)由個(gè)人開發(fā)者和企業(yè)組成的社群維護(hù)。根據(jù)JavaScript分析服務(wù)Libscore,React當(dāng)前正在被Netflix、Imgur、Bleacher Report、Feedly、Airbnb、SeatGeek、HelloSign等很多網(wǎng)站的主頁使用。
React 起源于 Facebook 的內(nèi)部項(xiàng)目,因?yàn)樵摴緦κ袌錾纤?JavaScript MVC 框架,都不滿意,就決定自己寫一套,用來架設(shè)Instagram 的網(wǎng)站。做出來以后,發(fā)現(xiàn)這套東西很好用,就在2013年5月開源了。React 是一個(gè)用于構(gòu)建用戶界面的 JAVASCRIPT 庫。React 主要用于構(gòu)建UI,很多人認(rèn)為 React 是 MVC 中的 V(視圖)。
React 擁有較高的性能,代碼邏輯非常簡單,越來越多的人已開始關(guān)注和使用它。
React 特點(diǎn)
-
聲明式設(shè)計(jì) −React采用聲明范式,可以輕松描述應(yīng)用。
-
高效 −React通過對DOM的模擬,最大限度地減少與DOM的交互。
-
靈活 −React可以與已知的庫或框架很好地配合。
-
JSX − JSX 是 JavaScript 語法的擴(kuò)展。React 開發(fā)不一定使用 JSX ,但我們建議使用它。
-
組件 − 通過 React 構(gòu)建組件,使得代碼更加容易得到復(fù)用,能夠很好的應(yīng)用在大項(xiàng)目的開發(fā)中。
-
單向響應(yīng)的數(shù)據(jù)流 − React 實(shí)現(xiàn)了單向響應(yīng)的數(shù)據(jù)流,從而減少了重復(fù)代碼,這也是它為什么比傳統(tǒng)數(shù)據(jù)綁定更簡單。
React 示例
最簡易的 React 示例如下:
ReactDOM.render( Hello, world!, document.getElementById('root') );
它將在頁面上展示一個(gè) “Hello, world!” 的標(biāo)題。