在這篇文章中,我將帶你了解一種對我來說非常有效的 資料夾結構。它對初學者友好,具備可擴展性,非常適合小型到中型專案。我們開始吧!
這個資料夾是用來存放所有靜態檔案,如圖片、圖示、字體及其他媒體。將它們放在一個地方可以方便你在整個應用中管理和引用。
這裡要儲存的東西:
logo.png
, background.jpg
) <figcaption> 資料夾 Assets </figcaption>
這裡是你的可重用 UI 組件所在的地方。想想按鈕、卡片、模態視窗,以及應用中可以重複使用的任何其他元素。
這裡要儲存的東西:
Button.jsx
, Card.jsx
) components/Header/
)<figcaption> 資料夾 Components </figcaption>
React Context 非常適合管理全局狀態,而不必進行屬性傳遞。這個資料夾儲存所有的上下文提供者和相關邏輯。
這裡要儲存的東西:
AuthContext.js
, ThemeContext.js
) <figcaption> 資料夾 Contexts </figcaption>
這個資料夾是用來存放不屬於特定組件或功能的工具函數。這些是一些能讓你生活更輕鬆的小助手。
這裡要儲存的東西:
formatDate.js
, validateEmail.js
) appConstants.js
) <figcaption> 資料夾 Helpers </figcaption>
自訂 hooks 在 React 中是個遊戲改變者。這個資料夾是用來存放所有可重用的 hooks,讓它們保持組織性並方便導入。
這裡要儲存的東西:
useFetch.js
, useLocalStorage.js
) useAuth.js
, useTheme.js
)<figcaption> 資料夾 Hooks </figcaption>
佈局是你應用的骨架。它們定義了你頁面的結構(例如,標題、頁腳、側邊欄),並幫助在應用中維持一致性。
這裡要儲存的東西:
MainLayout.js
, AuthLayout.js
) <figcaption> 資料夾 Layouts </figcaption>
這個資料夾包含代表應用中每個頁面的頂層組件。這裡的每個檔案對應於應用中的一個路徑。
這裡要儲存的東西:
Home.jsx
, About.jsx
, Contact.jsx
) <figcaption> 資料夾 Pages </figcaption>
這個資料夾用於儲存所有的 API 呼叫和外部服務整合。將它們分開儲存可以在測試時輕鬆進行管理和模擬。
這裡要儲存的東西:
authService.js
, userService.js
) apiConfig.js
)<figcaption> 資料夾 Services </figcaption>
這個資料夾是用來存放全局樣式、主題和 CSS 實用工具。如果你在使用 CSS-in-JS 函式庫,你可能不需要這個資料夾,但它對於全局樣式仍然很有用。
這裡要儲存的東西:
global.css
) theme.js
,適用於 styled-components 或 Material-UI) <figcaption> 資料夾 Styles </figcaption>
這是你應用的進入點。在這裡,你可以定義路由,將應用包裝在提供者中,並設置任何全局配置。
這裡要包含的內容:
react-router-dom
) AuthProvider
, ThemeProvider
) 以下是完整的資料夾結構,包括每個資料夾中的檔案:
<figcaption> 完整的資料夾結構 </figcaption>
README.md
文件來解釋你的資料夾結構,以便你的團隊(或未來的自己)理解。 現在你已經有了一個堅實的結構,是時候開始構建了!記住,最好的結構是對你和你的團隊有效的。隨意調整這個設定來符合你的需求。
祝編程愉快 💻
感謝你的閱讀! 🙏🏻 <br/> 希望你覺得這有用 ✅ <br/> 請給我反應並關注以獲得更多資訊 😍 <br/> 由 Hadil Ben Abdallah 用 💙 製作 | ![]() ![]() ![]() |
---|
原文出處:https://dev.to/hadil/how-to-structure-a-react-app-like-a-pro-20b9