Совместимость
Утилиты Nuxt Kit можно использовать в Nuxt 3, Nuxt 2 с Bridge и даже в Nuxt 2 без Bridge. Чтобы убедиться, что ваш модуль совместим со всеми версиями, вы можете использовать функции checkNuxtCompatibility, assertNuxtCompatibility и hasNuxtCompatibility. Они проверят, соответствует ли текущая версия Nuxt указанным вами ограничениям. Также вы можете использовать функции isNuxt2, isNuxt3 и getNuxtVersion для более детальных проверок.
checkNuxtCompatibility
Проверяет, соблюдены ли ограничения для текущей версии Nuxt. Если нет, возвращает массив сообщений. В версии Nuxt 2 также проверяет поддержку bridge.
Usage
import { defineNuxtModule, checkNuxtCompatibility } from '@nuxt/kit'
export default defineNuxtModule({
async setup (_options, nuxt) {
const issues = await checkNuxtCompatibility({ nuxt: '^2.16.0' }, nuxt)
if (issues.length) {
console.warn('Nuxt compatibility issues found:\n' + issues.toString())
} else {
// do something
}
}
})
Type
function checkNuxtCompatibility(constraints: NuxtCompatibility, nuxt?: Nuxt): Promise<NuxtCompatibilityIssues>;
Параметры
constraints: Version and builder constraints to check against. It accepts the following properties:
| Property | Type | Required | Description |
|---|---|---|---|
nuxt | string | false | Nuxt version in semver format. Versions may be defined in Node.js way, for example: >=2.15.0 <3.0.0. |
bridge | Record<string, string | false> | false | Specifies version constraints or disables compatibility for specific Nuxt builders like vite, webpack, or rspack. Use false to disable. |
nuxt: Nuxt instance. If not provided, it will be retrieved from the context via useNuxt() call.
assertNuxtCompatibility
Подтверждает, что ограничения выполнены для текущей версии Nuxt. Если нет, выдает ошибку со списком проблем в виде строки.
Тип
// @errors: 2391
import type { Nuxt, NuxtCompatibility } from '@nuxt/schema'
// ---cut---
function assertNuxtCompatibility(constraints: NuxtCompatibility, nuxt?: Nuxt): Promise<true>;
Параметры
constraints: Version and builder constraints to check against. Refer to the constraints table in checkNuxtCompatibility for details.
nuxt: Nuxt instance. If not provided, it will be retrieved from the context via useNuxt() call.
hasNuxtCompatibility
Проверяет, соблюдены ли ограничения для текущей версии Nuxt. Возвращает true, если все ограничения соблюдены, в противном случае возвращает false. В версии Nuxt 2 также проверяет поддержку bridge.
Usage
import { defineNuxtModule, hasNuxtCompatibility } from '@nuxt/kit'
export default defineNuxtModule({
async setup (_options, nuxt) {
const usingNewPostcss = await hasNuxtCompatibility({ nuxt: '^2.16.0' }, nuxt)
if (usingNewPostcss) {
// do something
} else {
// do something else
}
}
})
Type
function hasNuxtCompatibility(constraints: NuxtCompatibility, nuxt?: Nuxt): Promise<boolean>;
Параметры
constraints: Version and builder constraints to check against. Refer to the constraints table in checkNuxtCompatibility for details.
nuxt: Nuxt instance. If not provided, it will be retrieved from the context via useNuxt() call.
isNuxtMajorVersion
Check if current Nuxt instance is of specified major version
Usage
import { defineNuxtModule, isNuxtMajorVersion } from '@nuxt/kit'
export default defineNuxtModule({
async setup () {
if (isNuxtMajorVersion(3)) {
// do something for Nuxt 3
} else {
// do something else for other versions
}
}
})
Тип
function isNuxtMajorVersion(major: number, nuxt?: Nuxt): boolean;
Параметры
major: Major version to check against.
nuxt: Nuxt instance. If not provided, it will be retrieved from the context via useNuxt() call.
isNuxt3
Проверяет, является ли текущая версия Nuxt версией 3.x.
isNuxtMajorVersion(2, nuxt) instead. This may be removed in @nuxt/kit v5 or a future major version.Тип
function isNuxt3(nuxt?: Nuxt): boolean;
Параметры
nuxt: Nuxt instance. If not provided, it will be retrieved from the context via useNuxt() call.
isNuxt2
Checks if the current Nuxt version is 2.x.
isNuxtMajorVersion(2, nuxt) instead. This may be removed in @nuxt/kit v5 or a future major version.Type
function isNuxt2(nuxt?: Nuxt): boolean;
Parameters
nuxt: Nuxt instance. If not provided, it will be retrieved from the context via useNuxt() call.
getNuxtVersion
Возвращает текущую версию Nuxt.
Тип
function getNuxtVersion(nuxt?: Nuxt): string;
Параметры
nuxt: Nuxt instance. If not provided, it will be retrieved from the context via useNuxt() call.
Программное использование
Nuxt Kit предоставляет набор утилит, помогающих работать с Nuxt программно. Эти функции позволяют загружать Nuxt, собирать Nuxt и загружать конфигурацию Nuxt.
Автоимпорты
Nuxt Kit предоставляет набор утилит для работы с автоимпортами. Эти функции позволяют регистрировать собственные утилиты, композаблы и API Vue.