我有一个这段代码,当我的状态desktopOpen: true
切换为布尔状态时,我想运行此代码。
handleResize() {
const evt = window.document.createEvent('UIEvents');
evt.initUIEvent('resize', true, false, window, 0);
window.dispatchEvent(evt);
}
答案 0 :(得分:0)
您可以在设置状态的任何地方立即传递回调,并可以在回调中更新事件。
this.setState(prevState => ({
desktopOpen: !prevState.desktopOpen
}), () => {
if (this.state.desktopOpen) {
const evt = window.document.createEvent('UIEvents');
evt.initUIEvent('resize', true, false, window, 0);
window.dispatchEvent(evt);
}
});