我是 ReactJS 的新手,我在项目中使用向导形式,使用户能够执行下一步和上一步。我复制了下一个按钮的一些代码,但老实说不明白它的含义。
你能帮我理解下面的代码吗:
next() {
this.setState(prevState => ({ current: prevState.current + 1 }));
}
感谢您的贡献。
正如评论中所建议的,您可能应该看看文档,但由于您是新贡献者,我想我会尝试回答您的问题。
State 和 setState 如何工作
每个组件反应类都有一个“状态”。当“状态”更新时,组件将重新渲染。setState
是用于更新组件状态的方法。this
指的是组件本身。
你的组件state
对象最初可能看起来像这样:{ current: 0, something: 'foo' }
.
next() 正在做什么
你打电话时next()
, then setState
也会被调用。setState
通过回调来调用。回调提供一个参数,此处名为prevState
- prevState 是当前状态state
在组件上,所以{ current: 0, something: 'foo' }
.
返回值setState
将设置所提供的状态对象上的任何字段。打电话后this.setState
,新值component.state
将{ current: 1, something: 'foo' }
.
重新渲染
将触发组件的重新渲染,因为新状态和先前状态对象的浅比较将返回false
.
希望这可以帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)