nuxt logo

ドキュメント翻訳(非公式)

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 resolver = createResolver(import.meta.url)

    // APIルートを追加
    addServerHandler({
      route: '/api/hello',
      handler: resolver.resolve('./runtime/api-route')
    })
  }
})

Nuxtを起動すると、hello モジュールが登録され、/api/hello ルートが利用可能になります。

モジュールは以下の順序で実行されます:

  • まず、nuxt.config.ts に定義されたモジュールが読み込まれます。
  • 次に、modules/ ディレクトリにあるモジュールがアルファベット順に実行されます。

ローカルモジュールの順序を変更するには、各ディレクトリ名の前に番号を追加します:

ディレクトリ構造
modules/
  1.first-module/
    index.ts
  2.second-module.ts
こちらも参照 guide > going-further > modules

NuxtのプライベートモジュールについてのVue Schoolのビデオを視聴してください。