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

Коллекция материалов в Nuxt

Давайте разберём, как модуль узнаёт, какие файлы относятся к одному разделу сайта. Список таких групп задаётся в content.config.ts в корне проекта. CLI модуля создаёт этот файл при установке; в нём вызывают defineContentConfig и для каждой группы - defineCollection.

Коллекция типа page собирает материалы, которые могут открываться по адресу: у каждой записи появятся заголовок, описание, тело и поле path для ссылок. Свойство source задаёт маску файлов относительно content. Для блога подойдёт шаблон blog/**/*.md:

import { defineCollection, defineContentConfig, } from '@nuxt/content'; export default defineContentConfig({ collections: { blog: defineCollection({ type: 'page', source: 'blog/**/*.md', }), }, });

Имя ключа blog - это название коллекции в коде. Его же передают в функцию запроса материалов, когда нужно получить список или одну страницу. Пока в content/blog нет файлов, запросы вернут пустой результат, но конфиг уже готов к добавлению заметок.

Структура каталогов для примера:

  • /content/
    • /blog/
  • /content.config.ts

После сохранения конфига Nuxt Content проиндексирует совпадающие файлы при следующей сборке или перезапуске npm run dev. Отдельно прописывать коллекцию в nuxt.config.ts не нужно, достаточно подключённого модуля @nuxt/content.

Опишите коллекцию news типа page с маской news/**/*.md в content.config.ts.

Создайте каталог content/employees и коллекцию staff для файлов employees/**/*.md.

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