目前寫 React 19 的文章已經有很多很多了,但是,寫到點子上的并不多。包括官方文檔,只是簡單的羅列出了它新增了一些 hook,一些特性,卻并沒有進一步說明這些 hook 背后所代表的含義,它們的最佳實踐是什么。
以至于,在這個時間節點,期待 React 19 的人也并不是很多。
但是,我要告訴大家的是,我們都嚴重低估了 React 19。
beta 版在 npm 上可用之后,我就創建了一個項目,把 React 新增的特性都使用了一遍。如下圖所示。
在項目開發中,新頁面渲染時請求一個接口的場景非常常見。新的架構思維的開發代碼如下所示。
該案例沒有引入任何三方庫。
首先我們需要定義一個 API 用于請求數據。
const api = async () => { const res = await fetch('https://api.chucknorris.io/jokes/random') return res.json()}
然后創建一個函數組件,并執行該 api。
export default function Index() { const __api = api() return ( <div> <div id='tips'>初始化時,自動獲取一條數據內容</div> <Suspense fallback={<div>loading...</div>}> <Item api={__api} /> </Suspense> </div> )}
最后在子組件中,獲取 api 執行之后得到的數據。
const Item = (props) => { const joke = use(props.api) return ( <div> <div>{joke.value}</div> </div> )}
大家可以自行感受一下新的開發方式與以前基于 useEffect 請求數據有什么不同之處。
注意:一套成熟架構思維,不是使用一個簡單的方案解決某一個問題,而是要基于這套思維去解決項目中的絕大多數場景。因此我們一定要結合大量的場景去理解一套項目架構思維。
本文鏈接:http://www.tebozhan.com/showinfo-26-92116-0.html被嚴重低估!React 19 又是一次開發方式的變革,useEffect 將會逐漸退出歷史舞臺
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com
下一篇: 快看,我的代碼能“自己說話”!