更改子組件的狀態,我有兩個組成部分: 父組件從中我想更改子組件的狀態:反應JS從父組件
class ParentComponent extends Component {
toggleChildMenu() {
?????????
}
render() {
return (
<div>
<button onClick={toggleChildMenu.bind(this)}>
Toggle Menu from Parent
</button>
<ChildComponent />
</div>
);
}
}
而且輔元件:
class ChildComponent extends Component {
constructor(props) {
super(props);
this.state = {
open: false;
}
}
toggleMenu() {
this.setState({
open: !this.state.open
});
}
render() {
return (
<Drawer open={this.state.open}/>
);
}
}
我需要從父組件更改子組件的打開狀態,或者調用子組件t的toggleMenu()從父組件按鈕在父組件單擊時?
這能用來控制CSS屬性像 '顯示'?如果我的道具'open'包含'none'或'inline-block',css顯示道具是否會更新? – deusofnull
yes試試看,它應該可以運行 –
我最終使用react-classname軟件包,並使用'display'prop作爲布爾值來判斷是否向元素添加'hidden'類。這很容易,我的開發人員推薦我的方法。謝謝你的迴應! – deusofnull