React是用于構(gòu)建用戶界面的JavaScript庫,能夠幫助用戶輕松的創(chuàng)建交互界面,構(gòu)建封裝你的組件,管理好你的狀態(tài)state,react能夠很好的限制用戶的輸入,通過虛擬的DOM來更新頁面,基本上無障礙地反應在UI界面上。軟件革命性創(chuàng)新,性能出眾,代碼邏輯卻非常簡單,深受用戶喜愛,是 Web 開發(fā)的主流工具。
React簡介
為全新的 JSX 轉(zhuǎn)換器添加 react/jsx-runtime 和 react/jsx-dev-runtime。
根據(jù)原生框架構(gòu)建組件調(diào)用棧。
可以在 context 中設(shè)置 displayName 以改善調(diào)用棧信息。
防止 ‘use strict’ 從 UMD 的 bundles 中泄露。
停止使用 fb、me 進行重定向。
框架特色
1、聲明式設(shè)計:React 使創(chuàng)建交互式 UI 變得輕而易舉。為你應用的每一個狀態(tài)設(shè)計簡潔的視圖,當數(shù)據(jù)變動時 React 能高效更新并渲染合適的組件
2、組件化:構(gòu)建管理自身狀態(tài)的封裝組件,然后對其組合以構(gòu)成復雜的 UI。
3、高效:React通過對DOM的模擬,最大限度地減少與DOM的交互。
4、靈活:無論你現(xiàn)在使用什么技術(shù)棧,在無需重寫現(xiàn)有代碼的前提下,通過引入 React 來開發(fā)新功能。
React DOM
將事件委托從 document 切換為 root。
在運行下一個副作用前,請清理所有副作用。
異步運行 useEffect 清理函數(shù)。
使用瀏覽器的 focusin 和 focusout 替換 onFocus 和 onBlur 的底層實現(xiàn)。
將所有 Capture 事件都使用瀏覽器的捕獲階段實現(xiàn)。
禁止在 onScroll 事件時冒泡。
如果 forwardRef 或 memo 組件的返回值為 undefined,則拋出異常。
移除事件池。
移除 React Native Web 不需要的內(nèi)部組件。
當掛載 root 時,附加所有已知的事件監(jiān)聽器。
在 Dev 模式下,禁用第二次渲染過程中的 console。
棄用為記錄且具有誤導性的 ReactTestUtils、SimulateNative API。
重命名內(nèi)部使用的私有字段。
不在開發(fā)環(huán)境調(diào)用 User Timing API。
在嚴格模式下重復渲染期間禁用 console。
在嚴格模式下,二次渲染組件也不使用 Hook。
允許在生命周期函數(shù)中調(diào)用 ReactDOM、flushSync(但會發(fā)出警告)。
將 code 屬性添加到鍵盤事件對象中。
為 video 元素添加 disableRemotePlayback 屬性。
為 input 元素添加 enterKeyHint 屬性。
當沒有給 《Context、Provider》 提供任何值時,會發(fā)出警告。
如果 forwardRef 或 memo 組件的返回值為 undefined,則拋出警告。
為無效更新改進錯誤信息。
從調(diào)用棧信息中忽略 forwardRef 和 memo。
在受控輸入與非受控輸入間切換時,改善錯誤消息。
保持 onTouchStart、onTouchMove 和 onWheel 默認為 passive。
修復在 development 模式下 iframe 關(guān)閉時,setState 掛起的問題。
使用 defaultProps 修復拉架子組件在渲染時的問題。
修復當 dangerouslySetInnerHTML 為 undefined 時,誤報警告的問題。
使用非標準的 require 實現(xiàn)來修復 Test Utils。
修復 onBeforeInput 報告錯誤的 event、type。
修復 Firefox 中 event、relatedTarget 輸出為 undefined 的問題。
修復 IE11 中 “unspecified error” 的問題。
修復 shadow root 中的渲染問題。
使用事件捕獲修復 movementX/Y polyfill 的問題。
使用委托處理 onSubmit 和 onReset 事件。
提高內(nèi)存使用率。
下一篇:幕享無線投屏軟件