超过了最大更新深度.React限制了嵌套更新的数量,以防止无限循环.要在react native中增加常量变量



我想要count variable来计算我的应用程序中有多少规范。所以我已经声明变量CCD_ 1处于状态。在函数检查规范中,如下面和增量计数。

const {
normsCount
} = this.state
if (isViolationPass_Out_HMR) {
this.setState({
normsCount: normsCount + 1
})
}

但是得到这个错误

ExceptionsManager.js:180 Error: Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.
This error is located at:
in NavigationContainer (at App.js:412)
in App (at renderApplication.js:47)
in RCTView (at View.js:34)
in View (at AppContainer.js:107)
in RCTView (at View.js:34)
in View (at AppContainer.js:134)
in AppContainer (at renderApplication.js:40)

任何帮助都要提前感谢。

如果在渲染函数中设置状态,则状态将发生更改,从而导致重新渲染。这导致了无限循环。

您需要确保仅在更改时触发一次增加。

您在函数内部调用setState,该函数在呈现函数内部被调用,该函数连续调用setState导致无限循环。为了阻止这种情况,你必须对任何像onclick这样的事件执行setState。检查在render函数内部调用的setState,并在事件上执行该setState。

最新更新