模块目录 Modules

使用 modules/ 目录在您的应用程序中自动注册本地模块

Nuxt 扫描 modules/ 目录并在启动前加载它们。 这是放置您在构建应用程序时开发的任何本地模块的好地方。

自动注册的文件模式是:

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

您不需要将这些本地模块单独添加到您的 nuxt.config.ts

ts
modules/hello/index.ts
ts
// `nuxt/kit` 是一个辅助子路径导入,您可以在定义本地模块时使用,
// 这意味着您不需要将 `@nuxt/kit` 添加到项目的依赖项中
import { addServerHandler, createResolver, defineNuxtModule } from 'nuxt/kit'

export default defineNuxtModule({
  meta: {
    name: 'hello'
  },
  setup() {
    const { resolve } = createResolver(import.meta.url)

    // Add an API route
    addServerHandler({
      route: '/api/hello',
      handler: resolve('./runtime/api-route')
    })
  }
})

当启动 Nuxt 时,hello 模块将被注册并且 /api/hello 路由可用。

本地模块按字母顺序注册。 您可以通过在每个目录前面加上一个数字前缀来更改顺序:

md
modules/
  1.first-module/
    index.ts
  2.second-module.ts