我想爲每個組件實例做一個局部變量,就像一個小緩存,因爲它存儲的信息切換的東西,並不需要在狀態/存儲。所以,我已經嘗試過像這樣:反應,本地緩存變量和射擊onclick呈現
設置一個默認的道具,以保持我的信息:
getDefaultProps: function getDefaultProps() {
return {
showPreviewModal: { value: false,
writable: true
}
};
},
設置一個函數來切換此道具:
togglePreviewModal: function togglePreviewModal() {
this.props.showPreviewModal = !this.props.showPreviewModal;
},
,並具有該功能通過發射點擊功能
<button className="btn btn-default btn-blue previewAsset" onClick={() => this.togglePreviewModal() }>
我認爲這在理論上的工作,但的onclick是immedietly射擊在渲染上。我GOOGLE了這個問題,它似乎是最好的結果是將點擊功能更改爲:
{() => { this.props.togglePreviewModal() }}
然而,這並不工作,要麼,點擊功能仍然是射擊立即。
你不能修改React組件的'this.props'。如果您需要該組件來存儲組件之外未知的信息,則必須使用狀態。 –