1. 程式人生 > >React基礎知識點全解

React基礎知識點全解

•      propTypes、defaultProps 作為 properties 定義,也可以在元件外部通過鍵值對方式進行設定。

•      設定元件初始的 state不支援 getInitialState,可以在元件的constructor中通過this.state來設定,直接作為 properties 定義也可以。

•      不支援 mixins,可以使用高階元件寫法,或者 decorator。

1. 頂層API

最簡單的React元件及渲染

 

 

 

react.js

 

 

 

Component API

 

 

react-dom.js

 

 

react-dom-server.js

 

 

2. jsx語法

類似 xml 的語法,用來描述元件樹

 

 

不用JSX,用React提供的API寫的話

 

 

2.1 註釋、命名、根元素個數、JSX 嵌入變數

 

 

  • React只有一個限制, 元件只能渲染單個根節點。如果你想要返回多個節點,它們必須被包含在同一個節點裡。

2.2 styles

 

 

2.3 JSX SPREAD

可以用通過 {...obj} 來批量設定一個物件的鍵值對到元件的屬性,注意順序

 

 

2.4 屬性名不能和 js 關鍵字衝突

例如:className, readOnly, htmlfor

3. 資料流:state props propType

3.1 state && setState

用狀態控制組件變化 可以把一個元件看做一個狀態機, 每一次狀態對應於元件的一個 ui

元件內部的狀態,可以使用 state

 

 

3.2 props

通過 this.props 可以獲取傳遞給該元件的屬性值,還可以通過定義 getDefaultProps 來指定預設屬性值(這是ES5的寫法,ES6定義元件的預設props可以直接寫props)

下面幾個是props的常用API:

•     this.props.children

    this.props.map

    this.props.filter

props是呼叫元件的時候傳遞進去的資料,一般用於元件樹資料傳遞

 

 

3.3 propTypes

通過指定 propTypes 可以校驗props屬性值的型別,校驗可提升開發者體驗,用於約定統一的介面規範。