Javascript 错误:重新渲染过多。React限制渲染的数量以防止无限循环。反应
我正在使用ReactJS开发一个网站。当我运行时,我得到了“太多的重新渲染。React限制渲染数量以防止无限循环。”错误 这是我的密码:Javascript 错误:重新渲染过多。React限制渲染的数量以防止无限循环。反应,javascript,reactjs,Javascript,Reactjs,我正在使用ReactJS开发一个网站。当我运行时,我得到了“太多的重新渲染。React限制渲染数量以防止无限循环。”错误 这是我的密码: const [load, setLoad] = useState(false); const [data, setData] = useState({}); const [server, setServer] = useState({}); const [discord, setDiscord] = useState({}); const
const [load, setLoad] = useState(false);
const [data, setData] = useState({});
const [server, setServer] = useState({});
const [discord, setDiscord] = useState({});
const [memberCounter, setMemberCounter] = useState(false);
const [emojiCounter, setEmojiCounter] = useState(false);
const [roleCounter, setRoleCounter] = useState(false);
const [boostCounter, setBoostCounter] = useState(false);
const { id, type } = useParams();
useEffect(() => {
fetch('/api/serverinfo/' + id)
.then(res => {
if(res.ok) return res.json();
})
.then(res => {
setLoad(true);
setData(res);
setServer(res._doc);
setDiscord(res.discord);
})
}, []);
if(server.counter && server.counter.length > 0){
server.counter.map(c => {
if(c.type == "members") setMemberCounter(true);
if(c.type == "roles") setRoleCounter(true);
if(c.type == "emojis") setEmojiCounter(true);
if(c.type == "boosts") setBoostCounter(true);
});
}
它说我在这条线上有个错误
setServer(res.\u doc)代码>
你知道有什么问题吗
更新
对于存在此问题的用户,只需将setMemberCounter(true);,setRoleCounter(真);,setEmojiCounter(真);,setBoostCounter(真)代码>这些内部useffect()