自動インポート
Nuxt Kit は、自動インポートを利用するためのユーティリティを提供します。これらの関数を使用して、独自のユーティル、コンポーザブル、Vue API を登録できます。
Nuxt は、ヘルパー関数、コンポーザブル、Vue API を明示的にインポートすることなくアプリケーション全体で使用できるように自動インポートします。ディレクトリ構造に基づいて、すべての Nuxt アプリケーションは独自のコンポーザブルやプラグインの自動インポートも利用できます。
Nuxt Kit を使用すると、独自の自動インポートを追加することもできます。addImports
と addImportsDir
を使用して、Nuxt アプリケーションにインポートを追加できます。addImportsSources
を使用すると、サードパーティパッケージからリストされたインポートを Nuxt アプリケーションに追加できます。
これらのユーティリティは、Nuxt で使用される基盤となる自動インポートメカニズムを提供する unimport
によって動作しています。
これらの関数は、独自のユーティル、コンポーザブル、Vue API を登録するために設計されています。ページ、コンポーネント、プラグインについては、特定のセクションを参照してください:ページ、コンポーネント、プラグイン。
Nuxt Kit の自動インポートユーティリティに関する Vue School のビデオを視聴してください。
addImports
Nuxt アプリケーションにインポートを追加します。これにより、手動でインポートする必要なく、Nuxt アプリケーションでインポートが利用可能になります。
使用法
import { defineNuxtModule, addImports } from "@nuxt/kit";
export default defineNuxtModule({
setup(options, nuxt) {
const names = [
"useStoryblok",
"useStoryblokApi",
"useStoryblokBridge",
"renderRichText",
"RichTextSchema"
];
names.forEach((name) =>
addImports({ name, as: name, from: "@storyblok/vue" })
);
}
})
型
function addImports (imports: Import | Import[]): void
パラメータ
imports
: 以下のプロパティを持つオブジェクトまたはオブジェクトの配列:
プロパティ | 型 | 必須 | 説明 |
---|---|---|---|
name | string | true | 検出されるインポート名。 |
from | string | true | インポート元のモジュール指定子。 |
priority | number | false | インポートの優先度。同じ名前のインポートが複数ある場合、最も高い優先度のものが使用されます。 |
disabled | boolean | false | このインポートが無効かどうか。 |
meta | Record<string, any> | false | インポートのメタデータ。 |
type | boolean | false | このインポートが純粋な型インポートかどうか。 |
typeFrom | string | false | 型宣言を生成する際に from 値として使用します。 |
as | string | false | この名前としてインポートします。 |
addImportsDir
ディレクトリから Nuxt アプリケーションにインポートを追加します。ディレクトリ内のすべてのファイルを自動的にインポートし、手動でインポートする必要なく Nuxt アプリケーションで利用可能にします。
使用法
import { defineNuxtModule, addImportsDir, createResolver } from '@nuxt/kit'
export default defineNuxtModule({
meta: {
name: '@vueuse/motion',
configKey: 'motion',
},
setup(options, nuxt) {
const resolver = createResolver(import.meta.url)
addImportsDir(resolver.resolve('./runtime/composables'))
},
})
型
function addImportsDir (dirs: string | string[], options?: { prepend?: boolean }): void
パラメータ
プロパティ | 型 | 必須 | 説明 |
---|---|---|---|
dirs | string | string[] | true | インポート元のディレクトリへのパスを持つ文字列または文字列の配列。 |
options | { prepend?: boolean } | false | インポートに渡すオプション。prepend が true に設定されている場合、インポートはインポートリストの先頭に追加されます。 |
addImportsSources
リストされたインポートを Nuxt アプリケーションに追加します。
使用法
import { defineNuxtModule, addImportsSources } from '@nuxt/kit'
export default defineNuxtModule({
setup() {
addImportsSources({
from: 'h3',
imports: [
'defineEventHandler',
'getQuery',
'getRouterParams',
'readBody',
'sendRedirect'
],
})
}
})
型
function addImportsSources (importSources: ImportSource | ImportSource[]): void
パラメータ
importSources: 以下のプロパティを持つオブジェクトまたはオブジェクトの配列:
プロパティ | 型 | 必須 | 説明 |
---|---|---|---|
from | string | true | インポート元のモジュール指定子。 |
imports | PresetImport | ImportSource[] | true | インポート名、インポートオブジェクト、またはインポートソースであるオブジェクトまたはオブジェクトの配列。 |
※このページは Nuxt.js 公式ドキュメントの翻訳ページ(非公式)です。
公式ドキュメントの該当ページはこちら:
https://nuxt.com/docs/3.x/api/kit/autoimports