在react中更新三元运算符中的状态

问题描述

我正在使用moviedb API制作应用程序,并且在更新三元运算符内部的状态时遇到了一些麻烦。如果我运行以下代码来检查一切是否正常

{(match.params.id === iteminfo[0]) ? console.log("match") : console.log("nomatch")}

如果id和iteminfo匹配,则得到匹配,如果不匹配,则得到“不匹配”

当我尝试更新状态时

{(match.params.id === iteminfo[0]) ? setRemove(true) : console.log("nomatch")}

我收到以下错误

enter image description here

是否有一种方法可以更新状态,从而不会形成此循环?

解决方法

问题是您必须将此三元数放在render函数中,这会产生反馈循环。将其包装在useEffect回调中。