0

Ребят, подскажите пожалуйста, почему в это коде дважды отрабатывают функции fetchQuery и fetchWeather?

import React, { useState, useEffect} from 'react';

import './App.css';

function App() { const [weatherData, setWeatherData] = useState ({lat: 0, lon: 0});

async function fetchQuery () { const response = await fetch ('http://api.openweathermap.org/geo/1.0/direct?q=Grodno&limit=5&appid=7642c553b7faa8d106c8dcdb9391590c') .then (res => res.json ()); setWeatherData ({...weatherData, lat: response[0].lat, lon: response[0].lon}); console. log(response);
};

async function fetchWeather (lat, lon) { const response = await fetch (https://api.openweathermap.org/data/2.5/weather?lat=${lat}&lon=${lon}&appid=7642c553b7faa8d106c8dcdb9391590c).then (res => res.json ()); console. log(response); console. log(response.main.temp); console. log(response.main.temp - 273,15); };

useEffect (() => { fetchQuery (); fetchWeather (weatherData.lat, weatherData.lon); }, []);

return ( <div className="App"> HELLO </div> ); }

export default App;

В консоли выдает следующее:

App.js:13 (5) [{…}, {…}, {…}, {…}, {…}]
App.js:18 {coord: {…}, weather: Array(1), base: 'stations', main: {…}, visibility: 10000, …}
App.js:19 300.37
App.js:20 27.370000000000005 15
App.js:13 (5) [{…}, {…}, {…}, {…}, {…}]
App.js:18 {coord: {…}, weather: Array(1), base: 'stations', main: {…}, visibility: 10000, …}
App.js:19 300.37
App.js:20 27.370000000000005 15
  • Возможный дубликат вопроса : https://ru.stackoverflow.com/questions/1405415/useeffect-%D0%B2%D1%8B%D0%B7%D1%8B%D0%B2%D0%B0%D0%B5%D1%82%D1%81%D1%8F-2-%D1%80%D0%B0%D0%B7%D0%B0-%D0%BF%D1%80%D0%B8-%D1%80%D0%B5%D0%BD%D0%B4%D0%B5%D1%80%D0%B5-%D0%BD%D0%B5%D1%81%D0%BC%D0%BE%D1%82%D1%80%D1%8F-%D0%BD%D0%B0-%D0%BF%D1%83%D1%81%D1%82%D0%BE%D0%B9-%D0%BC%D0%B0%D1%81%D1%81%D0%B8%D0%B2-%D0%B7%D0%B0%D0%B2%D0%B8%D1%81%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D0%B5%D0%B9/1405451#1405451 – Maksim Bogdanov Jul 06 '22 at 14:57
  • Пожалуйста, исправьте вопрос, чтобы он отражал конкретную проблему с достаточным количеством деталей для возможности дать адекватный ответ. – Дух сообщества Jul 06 '22 at 15:01
  • Помогло, спасибо большое! – one hour before departure Jul 06 '22 at 15:18

0 Answers0