我很困惑为什么Iam会出现这个错误:太多的重新呈现。React限制呈现次数以防止无限循环。当我尝试调用USESTAT保存checkBoxList数据时,就会发生这种情况。如果我注释掉行setListOptions(checkBoxList);错误消失了。我希望发生的是,setListoptions应该保存在本地,然后我可以调用listOptions来映射我的数据。谢谢你的协助。
const ZoneDashboard: React.FC = () => {
const [listOptions, setListOptions] = useState<EnumMapping[]>();
const classes = useStyles();
const renderOptions = () => {
if (!showOptions) return <div />;
let checkBoxListLookup = enumHardwareValuesLookup(17375, attribs);
let checkboxEnabled = enumHardwareValuesLookup(16513, attribs);
let checkBoxList = new Array<EnumMapping>();
checkBoxListLookup.forEach(function (key) {
let enabled = checkboxEnabled.some(function (enable) {
return enable === key;
});
if (enabled) {
let enumMapping = new EnumMapping(key, true);
checkBoxList.push(enumMapping);
}
});
setListOptions(checkBoxList);
};
return (
<div>
{renderOptions()}
</div>
);
};
export default ZoneDashboard
每次呈现组件时,都调用renderOptions()。每次调用renderOptions时,都会设置一个状态变量。每次设置状态变量时,React rerenders。你的循环来了。
我在使用时遇到一个错误。即使加载页面是新鲜的,没有按下任何按钮,我的按钮onClick事件侦听器激活了,正如我之前在主题中提到的,我的错误: “错误:重新呈现太多。React限制呈现次数以防止无限循环。”
当我试图设置状态,然后得到一个错误。错误:太多的重新渲染。React限制渲染的数量以防止无限循环。 我已经用
当GetCreatorLicense()被禁用时,programe运行良好,我试图在循环之外设置数据,但仍然得到‘错误:太多的重新呈现’。React限制呈现的次数,以防止无限循环。错误,然后我把这个函数放在useEffect下,我只得到控制台输出,但useState没有改变
这是来自物料界面的模板。我从GitHub的注册中选择了这个模板,我只导入了useState并尝试使用它。 它抛出“太多的重新渲染。React限制渲染数量以防止无限循环材质”, 我尝试过使用反应钩子,因为我不能实现类。
我正在尝试创建登录表单,但出现了此错误。 任何人都可以解释为什么会发生此错误?? 我是新来的反应本土。 忽略这个(只是为了加量)= =我得补充一些没用的句子因为StackOverflow给我< code > '看起来你的帖子大部分是代码;请再补充一些细节。(对这个stackoverflow错误感到非常沮丧)
斯塔克布利茨链接。