@kirillleogky

Как в обработчике изменить переменную в одном скоупе и использовать её результат в другом скоупе?

Есть код:
window.onclick = async (event) => {
  let forecast;
  let location;
  if (event.target === document.querySelector('.navigation_menu_block-image_btn')) {
    if (document.querySelector('.search_menu_block-input').value > 2) {
      setImg(forecast, location);
    } else {
      setImg();
    }
  }
  if (event.target === document.querySelector('.search_menu_block-submit')) {
    const areaSearch = document.querySelector('.search_menu_block-input').value;
    const currForecast = await getForecast(useGeocod(areaSearch));
    forecast = await currForecast;
    location = await useGeocod(areaSearch);
  }
};


Мне нужно вызвать функцию с аргументами forecast и location в том случае если if (document.querySelector('.search_menu_block-input').value > 2)
Добавление значения происходит в другом скоупе:
if (event.target === document.querySelector('.search_menu_block-submit')) {

    forecast = await currForecast;
    location = await useGeocod(areaSearch);
  }


Как мне сделать чтобы значения устанавливаемые в скоупе if (event.target === document.querySelector('.search_menu_block-submit')) учитывались при вызове этой функции? :
if (document.querySelector('.search_menu_block-input').value > 2) {
      setImg(forecast, location);
    }
  • Вопрос задан
  • 33 просмотра
Решения вопроса 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
Что?
Всё выполняется по порядку. Наверное вам нужно поменять местами верхние if блоки?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 17:06
15000 руб./за проект
19 апр. 2024, в 16:53
1000 руб./за проект
19 апр. 2024, в 16:45
5000 руб./за проект