Автоимпорты
Nuxt подключает вспомогательные функции, композаблы и API Vue без явных импортов; по соглашениям о каталогах в автоимпорт попадают, например, ваши композаблы из composables/.
Через Kit можно добавлять свои символы: addImports и addImportsDir регистрируют импорты в приложении, addImportsSources — явный список имён из сторонних пакетов.
Под капотом тот же unimport, что и в самом Nuxt.
addImports
Добавляет импорт в приложение Nuxt, чтобы символ был доступен без ручного import.
addServerImports.Использование
import { addImports, defineNuxtModule } 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
Регистрирует импорты из каталога: экспорты из его файлов становятся доступны в приложении без ручных импортов.
Использование
import { addImportsDir, createResolver, defineNuxtModule } 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 { addImportsSources, defineNuxtModule } 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 | Имена импорта, объекты импорта или вложенные источники. |