當我做這樣的事情修改的子組件狀態:react - 在Child上使用更新狀態時,爲什麼父組件狀態會更改?
// inside child component
var stateToSet = this.state;
stateToSet[active] = false;
this.setState(nextState);
雙親狀態更改而不重新描繪。
我想當父節點this.state
被引用時stateToSet[active] = false
,所以我Object.assign
'd狀態和每個屬性我想修改,然後它的工作原理沒有修改父母的狀態。
我想現在爲什麼會發生這種情況。這可能是有意的行爲嗎?難道早午餐(我的編譯器)和連接文件成爲問題?
任何想法?
你能發佈一些來自你的父母和孩子的相關代碼嗎?你是否觸發了從孩子到父母的任何回調函數?理想情況下,子組件的狀態更改不會影響父項。 –