本文作者 Fran?ois Zaninotto 是資深 React 開發(fā)者,在看到 React 官方開始推廣服務(wù)器組件后,他對此表示擔(dān)憂,因?yàn)檫@會(huì)讓現(xiàn)有的很多寫法都失效。
文章討論了 React 和 Next.js 團(tuán)隊(duì)最近推廣的服務(wù)器組件,這種新的構(gòu)建 Web 應(yīng)用程序的方式與大多數(shù)現(xiàn)有的 React 應(yīng)用程序不符。
因此,作者提出了一個(gè)問題:這種變化是否像 Angular.js 轉(zhuǎn)向 Angular 2 一樣大?React 是否正在經(jīng)歷類似于 Angular.js 的階段?
文章指出,React 的核心仍然是一個(gè)視圖庫,這一點(diǎn)沒有改變:使用 React 服務(wù)器組件,您仍然可以使用 JSX 構(gòu)建組件,并渲染作為 props 傳遞的動(dòng)態(tài)內(nèi)容。但是,除此之外,服務(wù)器組件中的所有其他內(nèi)容都發(fā)生了變化。數(shù)據(jù)獲取不再依賴于 useEffect 或 react-query;相反,開發(fā)者應(yīng)該在異步組件中使用 fetch。
作者認(rèn)為,React 團(tuán)隊(duì)對 fetch 函數(shù)進(jìn)行了增強(qiáng),以提供自動(dòng)請求去重。這是必要的,因?yàn)槿绻枰诮M件樹的更深處訪問獲取的數(shù)據(jù),則不能將其放置在 React Context 中,因?yàn)?useContext 在服務(wù)器組件中被禁用。
因此,在組件樹的不同位置訪問相同獲取的數(shù)據(jù)的推薦方法是重新獲取它,并依賴于 React 進(jìn)行去重。此 fetch 函數(shù)還默認(rèn)緩存數(shù)據(jù),而不管響應(yīng)緩存標(biāo)頭如何。
-
函數(shù)
+關(guān)注
關(guān)注
3文章
4365瀏覽量
63851 -
應(yīng)用程序
+關(guān)注
關(guān)注
38文章
3316瀏覽量
58537 -
angular
+關(guān)注
關(guān)注
0文章
4瀏覽量
3101
原文標(biāo)題:React正在經(jīng)歷Angular.js的時(shí)刻嗎?
文章出處:【微信號(hào):OSC開源社區(qū),微信公眾號(hào):OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評(píng)論請先 登錄
相關(guān)推薦
【深圳】誠聘H5開發(fā)工程師
React優(yōu)勢,react學(xué)習(xí)筆記分享
遭遇JS的筆記本慘痛維修經(jīng)歷
React Native開發(fā)關(guān)鍵技術(shù)點(diǎn)實(shí)戰(zhàn)分析

安卓轉(zhuǎn)戰(zhàn)React-Native

什么是前端開發(fā)?前端后端誰為先?
Web項(xiàng)目的最佳平臺(tái)選擇
詳談 Vue 和 React 的八大區(qū)別

React-in-patterns React開發(fā)設(shè)計(jì)模式/技術(shù)列表

React Native for Windows使用React構(gòu)建原生Windows應(yīng)用

評(píng)論