4 回答
TA贡献1829条经验 获得超4个赞
console.log(this.state.boardAddModalShow)
openAddBoardModal(){ this.setState({ boardAddModalShow: true }, function () { console.log(this.state.boardAddModalShow); });}
setState
setState()
不会立即变异 this.state
但是创建一个挂起的状态转换。存取 this.state
调用此方法后,可能会返回现有值。不能保证同步运行对setState的调用,调用可以批处理以获得性能增益。
他们为什么要做setState异步
这是因为setState改变了状态并导致重命名。这可能是一项昂贵的操作,使其同步可能会使浏览器无法响应。
因此,setState调用是异步的,并且是批处理的,以获得更好的UI体验和性能。
TA贡献1785条经验 获得超8个赞
openAddBoardModal(){ this.setState({ boardAddModalShow: true }, () => { console.log(this.state.boardAddModalShow) });}
TA贡献1853条经验 获得超18个赞
setState()
setState()
componentDidUpdate
setState
setState(updater, callback)
setState()
shouldComponentUpdate()
shouldComponentUpdate()
setState()
(state, props) => stateChange
state
this.setState((state, props) => { return {counter: state.counter + props.step};});
添加回答
举报