modules
modules/ディレクトリを使用して、アプリケーション内でローカルモジュールを自動的に登録します。
アプリケーションの構築中に開発するローカルモジュールを配置するのに適した場所です。
自動登録されるファイルのパターンは次のとおりです。
modules/*/index.tsmodules/*.ts
これらのローカルモジュールを個別にnuxt.config.tsに追加する必要はありません。
// `nuxt/kit` is a helper subpath import you can use when defining local modules
// that means you do not need to add `@nuxt/kit` to your project's dependencies
import { addServerHandler, createResolver, defineNuxtModule } from 'nuxt/kit'
export default defineNuxtModule({
meta: {
name: 'hello',
},
setup () {
const resolver = createResolver(import.meta.url)
// Add an API route
addServerHandler({
route: '/api/hello',
handler: resolver.resolve('./runtime/api-route'),
})
},
})
export default defineEventHandler(() => {
return { hello: 'world' }
})
Nuxtを起動すると、helloモジュールが登録され、/api/helloルートが利用可能になります。
モジュールは次の順序で実行されます。
- まず、
nuxt.config.tsで定義されているモジュールが読み込まれます。 - 次に、
modules/ディレクトリ内で見つかったモジュールが実行され、アルファベット順に読み込まれます。
各ディレクトリ名の先頭に数字を追加することで、ローカルモジュールの順序を変更できます。
ディレクトリ構造
modules/
1.first-module/
index.ts
2.second-module.ts