【发布时间】:2017-10-03 01:36:06
【问题描述】:
我无法理解为什么我的组件状态在 for 循环内没有改变。
这是一个例子:
class Example extends React.Component {
constructor() {
super()
this.state = {
labelCounter: 1,
}
}
componentDidMount() {
for (let i = 0; i < 10; i++) {
this.setState({ labelCounter: this.state.labelCounter + 1 })
console.log(this.state.labelCounter) // this.statelabelCounter = 1
}
}
}
如果我将代码稍微更改为这个,它似乎会按预期更改:
class Example extends React.Component {
constructor() {
super()
this.state = {
labelCounter: 1,
}
}
componentDidMount() {
for (let i = 0; i < 10; i++) {
this.setState({ labelCounter: ++this.state.labelCounter })
console.log(this.state.labelCounter)
}
}
}
【问题讨论】:
标签: javascript reactjs for-loop