我遇到了一个问题。我做了一个get请求,并多次获得结果。我已经从indexjs中删除了strictmode。第一个月
const token = localStorage.getItem('token')
if (token !== null) {
try {
const chat = await axios.get('http://localhost:5500/api/chat', {
headers: {
"Authorization": `Bearer ${token}`
}
})
console.log(chat.data.fetchChat);
setFetchChat(chat.data.fetchChat)
} catch (err) {
console.log(err);
}
}else{
navigate('/login')
}
}
useEffect(()=>{
allChat()
},[])```
My indexJs file
import React from 'react';
import ReactDOM from 'react-dom/client';
import App from './App';
import './index.css'
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render( <App />)
字符串
1条答案
按热度按时间wpcxdonn1#
您可以尝试在发出GET请求之前添加一个条件。下面是一个例子:
字符串
在上面的代码中,我只在发出GET请求后才将
hasFetched
设置为true。这样,如果组件重新呈现,我就可以避免再次发出请求,因为hasFetched
现在为true。