React 基礎二:目錄結構、命名、創建 react apps 步驟

這些內容是我學習 《fullstack-react-book》 一書,自己翻譯整理出來的要點。

目錄結構

  1. 當你瀏覽一個網站, assets 目錄存放的是你瀏覽器下載的,並且用來展示頁面的文件。

  2. 瀏覽器在解析 index.html 文件的時候,該文件其內部的 <head> 標籤內的代碼具體說明了需要瀏覽器從服務器下載哪些額外的文件。

命名組件

  1. 如何命名組件完全取決於你的喜好。但是,命名時圍繞着語義,保持一些一致的規則,將會極大地提高代碼的可讀性。

創建 React apps 的步驟

  1. 事實上,每一個 react 應用都可以按照以下步驟來開發:

    1. app 解構成組件

      1. 當拿到一個 app 設計稿時,我們基本上能從視覺上將 app 分成幾個 react 組件。
      2. 最小職責原則:在理想的情況下,每個組件應該各自負責一塊功能。這種職責界定法,不僅能讓每個組件非常簡單明瞭,還改善了可複用性。
    2. 創建一個靜態app 頁面:

      1. react 中給表單元素設置默認值,用的是 defaultValue 屬性。
      2. 那些最底層的組件,也就是我們通常所說的“葉根組件”,它們擔負起了頁面上的大部分 HTML 結構。這是些最根本的組件。所有基於“葉根組件”的組件都應該是被精心設計過的。
    3. 分別哪些變量應該是狀態化的:

      1. 如果一個屬性是通過 props 從父級組件那兒傳遞值過來的,那它一般不應該狀態化
      2. 如果一個屬性會隨着時間而改變,那他基本上是需要狀態化的數據!這是評判一個屬性是否爲狀態化數據的一條關鍵標準
      3. 如果一個屬性能夠通過其他 propsstate 計算得出,那它肯定不是 state 。爲了簡單考慮,我們儘可能描述最少的 state 值。
    4. 考察每個 state 變量應該放在哪個組件中:

      1. 對於每一個 state 值,我們都應該從以下幾個方面來考量它屬於哪個組件:
        • 確認每個組件在渲染一些結構的時候是基於這個 state 值的。
        • 找到所有需要這個 state 值的組件,並且在 DOM 樹找到這些組件的公共父級
        • 無論是公共父級,還是在 DOM 樹中更高級別的父級,都應該擁有這個state值。
        • 如果,在 DOM 樹中你找不到公共父級去擁有這個 state 值,那就請創建一個囊括了所有需要這個 state 值的新組件,這個新組件擁有這個 state 值。
    5. 硬編碼初始的 state

      1. 對於 react 中的 id 值,我們使用已經在 index.html 中加載的 UUID 這個庫。我們使用 uuid.v4() 爲每一個項目隨機生成一個通用的獨一無二的識別碼 (Universally Unique IDentifier)
      2. 使用 id 屬性來判斷一個對象是否已經創建是一種通用的做法。
      3. 單向數據管道 (one-way data pipeline):如果 state 值更新了,組件通過調用 render() 方法讓相應的 state 值重新渲染。這會相應地觸發它的子組件及孫子級組件等等後輩組件重新渲染。
    6. 增加相反的數據流

    7. 增加頁面與服務器的交互

發佈了45 篇原創文章 · 獲贊 57 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章