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
NuxtのプライベートモジュールについてのVue Schoolのビデオを視聴してください。
※このページは Nuxt.js 公式ドキュメントの翻訳ページ(非公式)です。
公式ドキュメントの該当ページはこちら:
https://nuxt.com/docs/3.x/guide/directory-structure/modules