2015-02-24 96 views

回答

1

propTypes
propTypes是一個對象,因爲它是用於聲明一個道具是特定JS原語。例如:

React.createClass({ 
    propTypes: { 
    optionalArray: React.PropTypes.array, 
    optionalBool: React.PropTypes.bool, 
    optionalFunc: React.PropTypes.func 
    } 
}); 

這有助於確保正確使用組件。如果爲道具提供了無效值,則會在JavaScript控制檯中顯示警告。

getDefaultProps()
getDefaultProps被用於定義props默認值,並且被調用一次,並且創建類時緩存。

爲什麼
相信優勢,或原因而,getDefaultProps()是一個函數,因此它可以被緩存以避免重新計算下一次使用組件。

+0

啊,功能緩存總是有意義的。謝謝! – 2015-02-26 00:06:33

+0

getDefaultProps的行爲與靜態Singleton方法類似,每次調用時都會返回一個可共享的對象。靜態,因爲它在組件實例創建之前被調用,並且它是單例的,所以它返回一個可共享的對象。 – 2015-10-10 00:59:50

相關問題