Learn Nuxt with a Collection of 100+ Tips!

modules

Используйте директорию modules/ для автоматической регистрации локальных модулей в вашем приложении.

Это место для размещения любых локальных модулей, которые вы разрабатываете при создании приложения.

Паттерны автоматически зарегистрированных файлов:

  • modules/*/index.ts
  • modules/*.ts

Вам не нужно добавлять эти локальные модули в nuxt.config.ts по отдельности.

//`nuxt/kit` — это хелпер для импорта подпути, который можно использовать при определении локальных модулей
// это означает, что вам не нужно добавлять `@nuxt/kit` в зависимости вашего проекта
import { 
createResolver
,
defineNuxtModule
,
addServerHandler
} from 'nuxt/kit'
export default
defineNuxtModule
({
meta
: {
name
: 'hello'
},
setup
() {
const {
resolve
} =
createResolver
(import.meta.
url
)
// Добавление роута API
addServerHandler
({
route
: '/api/hello',
handler
:
resolve
('./runtime/api-route')
}) } })

При запуске Nuxt будет зарегистрирован модуль hello и станет доступен маршрут /api/hello.

Модули выполняются в следующей последовательности:

  • Сначала загружаются модули, определенные в nuxt.config.ts.
  • Затем выполняются модули, найденные в директории modules/, и они загружаются в алфавитном порядке.

Вы можете изменить порядок локальных модулей, добавив номер в начало имени каждой директории:

Структура директории
modules/
  1.first-module/
    index.ts
  2.second-module.ts
Узнать больше Docs > Guide > Going Further > Modules.
Посмотрите видео от Vue School о закрытых модулях Nuxt.