props就是屬性,是為了描述一個組件的特征而存在的。它是父組件傳遞給子組件的。
使用props
通過上一個頁面傳遞
新建一個 PropsTest.js 文件
1 2 3 4 5 |
|
在上一個頁面中使用PropsTest組件
1 2 3 4 5 |
|
注意: 上方代碼,均為代碼片段。
默認屬性,以及它的作用
由於props的屬性都是上個頁面傳遞的,所以無法修改它。但是我們可以在PropsTest文件中,給props定義一些默認的值。
1 2 3 4 5 6 7 8 |
|
注意,defaultProps 需要使用static關鍵字來做靜態修飾。這樣,如果上個頁面沒有傳值,則顯示的是這個默認的屬性。
對props進行約束和檢查
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
對props里面的屬性進行類型判斷,可以使用propTypes來做到,同樣需要使用static關鍵字來修飾。
isRequired 可以指定必填項
注意:
propTypes屬性 在 react 包中,需要先導入才能使用。
props延伸操作符
ES6的最新語法
假如我們的組件需要好多屬性,如下:
1 2 3 4 5 6 7 8 9 |
|
在ES6中可以使用最新的延伸操作符特性
1 2 3 |
|
非常的簡潔
props解構賦值
ES6的最新語法
通過延伸操作符傳遞的對象,在另一個組件中想要從中獲取某幾個來使用,可以用解構賦值的方式
1 2 3 4 5 6 7 8 9 |
|