@luxurypluxury

Как получить город пользователя с Google Maps API?

Получаю массив данных, где вытаскиваю страну и город. Но элемент массива где город идёт первым элементом меняется почему-то, на телефонах показывает ещё область и город, а нужен только город.
const getGeo = () => {
        if ("geolocation" in navigator) {
            navigator.geolocation.getCurrentPosition((position) => {
                const lat = position.coords.latitude;
                const lng = position.coords.longitude;
                const url = API_URL + lat + "," + lng + "&key=" + API_KEY + "&language=en";
                fetchGeo(url);
            });
            return `${country}, ${city}`;
        } else {
            console.log("Geolocation is not supported by this browser.");
        }
    }

    const fetchGeo = async (url: string) => {
        try {
            const { data } = await axios.get(url);
            dispatch(setCountry(data.results[9].formatted_address));
            dispatch(setCity(data.results[7].formatted_address.split(',')[0]));
            console.log(data);
        } catch (error) {
            alert('An error occurred while getting the location');
            console.error(error);
        }
    }
  • Вопрос задан
  • 51 просмотр
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Определить, что элемент является городом и взять его, а не вот эти магические числа 9 и 7
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы