【发布时间】:2020-10-21 05:58:11
【问题描述】:
当我在我的 React 应用程序中调用以下代码时,我会收到对“预测”控制台的持续更新。我认为这与我在 zippedforecasts 映射中所做的参考有关?
如何防止“预测”的这种状态变化循环?
function App() {
const [dailyforecasts, setDailyforecasts]
const [hourlyforecasts, setHourlyforecasts
const [forecasts, setForecasts] = useState
useEffect(() => {
axios.get('https://api.openweathermap.
params: {
lat: 37.773972,
lon: -122.431297,
appid: API_Key,
units: "imperial",
}
})
.then(
res => {
const newDailyforecasts = res.
.map(obj => obj)
setDailyforecasts(newDailyfore
const newHourlyforecasts = res
.map(obj => obj)
const current_hour = new Date(
const day1 = newHourlyforecast
const day2 = newHourlyforecast
current_hour)))
const day3 = newHourlyforecast
const newHFs = [day1, day2, da
setHourlyforecasts(newHFs)
}
)},[]);
const zippedforecasts = dailyforecasts.map
{
return (hourlyforecasts[index]) ?
({dailyForecast:day, hourlyFor
({dailyForecast:day})
})
useEffect(() => {
setForecasts(zippedforecasts)
}, [zippedforecasts])
console.log(forecasts)
【问题讨论】:
-
您的代码在特定列大小后被截断。
标签: reactjs setstate use-effect