Использование данных, собранных с помощью axios позже в коде

#javascript #axios

Вопрос:

Я пытаюсь собрать данные с помощью API с помощью axios. Но допустим, я хочу использовать эти данные позже в коде, но всякий раз, когда я выхожу из асинхронного кода, статус возвращенных данных становится ожидающим. Как вернуть данные и сохранить их для использования в коде, когда я захочу?

Вот код:

 const fetchData = async () => {
const response = await axios.get("http://www.omdbapi.com/", {
    params: {
        apikey: "a7aeae67",
        // s: `${searchBar.value}`
        s: "vam"

    }
})
}

console.log(fetchData())
 

Ответ №1:

Это знаменитый аргумент «синяя функция, красная функция». Как только ваш код что-то делает async , к нему всегда нужно будет обращаться в асинхронном контексте.

Итак, невозможно получить доступ response из несинхронной функции, и вам придется обращаться async к ней внутри функций await , поочередно вводя ее.