隨着新年的開始,反思隨之而來。回想一下我最後是如何製作 React 應用程序的,我可以看到很多變化。
我曾經在所有項目中使用redux,現在我只使用 react-hooks。我以前用 enzyme 這個庫來測試,現在我用react-testing-library。我曾經在JS庫中使用CSS,比如emotion和styled-components,現在我使用普通的CSS和Tailwind。
我曾經使用 Gatsby來滿足我的靜態網站需求,現在我使用NextJS。我曾經使用普通的JavaScript和Prop Types,現在我使用TypeScript。
因此,這些是我在2021年所有新的React項目中默認使用的庫。我想知道明年這種情況是否會改變。
1. TypeScript
我是一個相對較新的打字稿世界的皈依者。但是我不得不承認,沒有它我就不會開始一個項目。 TypeScript使使用React變得更加容易,並且它使重構現有組件變得更加容易。 我甚至無法想象現在回到使用常規的JS和 prop 類型。
2. React Testing Library
這是你應該用來測試你的反應應用程序的庫。如果你沒有注意,測試庫已經過度競爭,成爲反應生態系統中最受歡迎的測試解決方案。
測試庫的最大優點是它鼓勵您像用戶一樣進行測試。它迫使您測試組件的表面,而不是它們的實現。
我重寫了整個頁面,重構了整個組件,而不必調整我的測試。這是react-testing-library的一個巨大優勢。
3. NextJS
大約一年前,我會用create-react-app或Gatsby開始我的大部分輔助項目。但是現在,在我的絕大多數項目中,我都堅持使用NextJS。
NextJS及其對靜態渲染的支持使Gatsby過時了,它對自定義構建配置的支持使我遠離了create-react-app。
我重寫了整個頁面,重構了整個組件,而不必調整我的測試。這是反應測試庫的一個巨大優勢。
4. A Form Library
我知道,這不是一個庫。但是當涉及到使用表單時,我從來沒有自己編寫表單邏輯。我總是選擇一個既定的解決方案,比如Formik、React-Final-Form或React-Hook-Form。
5. cslx
cslx是流行的類名庫的一個小插件替代品。這使得有條件地將多個類名組合在一起變得容易。它使像 Tailwind 這樣的實用程序類的工作變得容易。