You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

22 lines
749 B

import { City } from '../../data/stub';
import {GET_CITIES} from '../constants';
import { setCityList } from './setCityList';
export const getCityList = () => {
return async dispatch => {
try {
const cityPromise = await fetch('https://iut-weather-api.azurewebsites.net/cities');
const cityListJson = await cityPromise.json();
const cityList: City[] = cityListJson.map((elt: { [x: string]: any; }) => new City(elt["name"], elt["latitude"], elt["longitude"]));
dispatch(setCityList(cityList));
} catch (error) {
console.log('Error---------', error);
//You can dispatch to another action if you want to display an error message in the application
//dispatch(fetchDataRejected(error))
}
}
}