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

Страница материала в Nuxt

Список ведёт на отдельные тексты. Для одной заметки нужен другой конец цепочки запроса: после функции queryCollection задают фильтр по path и берут первый результат методом first.

Пусть в коллекции blog лежит content/blog/first.md с адресом /blog/first и заголовком в шапке. Сделаем страницу под этот URL и выведем только заголовок:

<script setup> const { data: page } = await useAsyncData( 'blog-first', () => queryCollection('blog') .path('/blog/first') .first(), ); </script> <template> <h1> {{ page?.title }} </h1> </template>

Ключ в useAsyncData можно выбрать любой: он кэширует payload между сервером и браузером. Строка /blog/first в path должна совпадать с полем path записи, иначе page останется пустым.

Такой файл страницы подходит, когда адресов мало. Для целого раздела позже удобнее один динамический роут и useRoute, но приём path и first остаётся тем же.

Сделайте страницу /guides/start, которая загружает материал коллекции справочника по его path и показывает заголовок в h1.

Сделайте страницу /news/welcome с заголовком одной новости из коллекции news тем же способом.

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