你好,我正在尝试更改状态,将对象更改为无限次
代码
componentDidUpdate (prevState) {
if (prevState.tab !== this.state.tab) {
this.setState((prevState) => ({
...prevState.tableConfiguration,
columns: getColumnsConfig(this.state.tab)
}))
}
}
未捕获的恒定违反:超出最大更新深度。当组件重复调用componentWillUpdate或componentDidUpdate内部的setState时,可能会发生这种情况。 React限制了嵌套更新的数量,以防止无限循环。
任何建议
答案 0 :(得分:0)
感谢您的评论,我找到了一种解决方案。
componentDidUpdate (prevProps, prevState) {
if (prevState.tab !== this.state.tab) {
const newConfig = {
...prevState.tableConfiguration,
columns: getColumnsConfig(this.state.tab)
}
this.setState({ tableConfiguration: newConfig })
}
}