РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗jsnuPmDtCR 61 of 84 menu
◀ ▶

Запрос по клику в Nuxt

Функция useFetch рассчитана на запуск в setup, когда страница только создаётся. Если данные нужны только после клика, вызывать её в обработчике неудобно: запрос должен идти один раз по событию, а результат храниться в переменной, которую мы сами обновим.

Для таких случаев в Nuxt есть функция $fetch. Она возвращает обещание с JSON и подходит для кода внутри функций. Сохраним ответ в ref и выведем список после нажатия. До клика список не рисуется, запрос живёт только в браузере по инициативе пользователя:

<script setup> const products = ref(null); async function loadProducts() { products.value = await $fetch( 'https://jsonplaceholder.typicode.com/posts', ); } </script> <template> <button type="button" @click="loadProducts" > Load products </button> <ul v-if="products"> <li v-for="item in products" :key="item.id" > {{ item.title }} </li> </ul> </template>

Сделайте страницу с кнопкой, которая по нажатию загружает товары с тестового API и выводит их названия.

Добавьте вторую кнопку, которая очищает список и снова скрывает блок с товарами.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить