Nuxt Nation 大会即将到来。加入我们,时间为 11 月 12-13 日。

兼容性

Nuxt Kit 提供了一组实用程序,可帮助您检查模块与不同 Nuxt 版本的兼容性。

Nuxt Kit 实用程序可以在 Nuxt 3、带有 Bridge 的 Nuxt 2 甚至没有 Bridge 的 Nuxt 2 中使用。为了确保您的模块与所有版本兼容,您可以使用 checkNuxtCompatibilityassertNuxtCompatibilityhasNuxtCompatibility 函数。它们将检查当前 Nuxt 版本是否满足您提供的约束条件。此外,您还可以使用 isNuxt2isNuxt3getNuxtVersion 函数进行更细粒度的检查。

checkNuxtCompatibility

检查当前 Nuxt 版本是否满足约束条件。如果不满足,则返回消息数组。Nuxt 2 版本还检查 bridge 支持。

类型

async function checkNuxtCompatibility(
  constraints: NuxtCompatibility,
  nuxt?: Nuxt
): Promise<NuxtCompatibilityIssues>;

interface NuxtCompatibility {
  nuxt?: string;
  bridge?: boolean;
  builder?: {
    // Set `false` if your module is not compatible with a builder
    // or a semver-compatible string version constraint
    vite?: false | string;
    webpack?: false | string;
  };
}

interface NuxtCompatibilityIssue {
  name: string;
  message: string;
}

interface NuxtCompatibilityIssues extends Array<NuxtCompatibilityIssue> {
  toString(): string;
}

参数

constraints

类型: NuxtCompatibility

默认值: {}

要检查的约束条件。它接受以下属性

  • nuxt (可选)
    类型: string
    以语义版本控制格式表示的 Nuxt 版本。版本可以在 Node.js 中定义,例如:>=2.15.0 <3.0.0
  • bridge (可选)
    类型: boolean
    如果设置为 true,它将检查当前 Nuxt 版本是否支持 bridge

nuxt

类型: Nuxt

默认值: useNuxt()

Nuxt 实例。如果未提供,它将通过 useNuxt() 调用从上下文中检索。

assertNuxtCompatibility

断言当前 Nuxt 版本是否满足约束条件。如果不满足,则抛出包含问题列表(作为字符串)的错误。

类型

async function assertNuxtCompatibility(
  constraints: NuxtCompatibility,
  nuxt?: Nuxt
): Promise<true>;

interface NuxtCompatibility {
  nuxt?: string;
  bridge?: boolean;
}

参数

constraints

类型: NuxtCompatibility

默认值: {}

要检查的约束条件。它接受以下属性

  • nuxt (可选)
    类型: string
    以语义版本控制格式表示的 Nuxt 版本。版本可以在 Node.js 中定义,例如:>=2.15.0 <3.0.0
  • bridge (可选)
    类型: boolean
    如果设置为 true,它将检查当前 Nuxt 版本是否支持 bridge

nuxt

类型: Nuxt

默认值: useNuxt()

Nuxt 实例。如果未提供,它将通过 useNuxt() 调用从上下文中检索。

hasNuxtCompatibility

检查当前 Nuxt 版本是否满足约束条件。如果所有约束条件都满足,则返回 true,否则返回 false。Nuxt 2 版本还检查 bridge 支持。

类型

async function hasNuxtCompatibility(
  constraints: NuxtCompatibility,
  nuxt?: Nuxt
): Promise<boolean>;

interface NuxtCompatibility {
  nuxt?: string;
  bridge?: boolean;
}

参数

constraints

类型: NuxtCompatibility

默认值: {}

要检查的约束条件。它接受以下属性

  • nuxt (可选)
    类型: string
    以语义版本控制格式表示的 Nuxt 版本。版本可以在 Node.js 中定义,例如:>=2.15.0 <3.0.0
  • bridge (可选)
    类型: boolean
    如果设置为 true,它将检查当前 Nuxt 版本是否支持 bridge

nuxt

类型: Nuxt

默认值: useNuxt()

Nuxt 实例。如果未提供,它将通过 useNuxt() 调用从上下文中检索。

isNuxt2

检查当前 Nuxt 版本是否为 2.x。

类型

function isNuxt2(nuxt?: Nuxt): boolean;

参数

nuxt

类型: Nuxt

默认值: useNuxt()

Nuxt 实例。如果未提供,它将通过 useNuxt() 调用从上下文中检索。

isNuxt3

检查当前 Nuxt 版本是否为 3.x。

类型

function isNuxt3(nuxt?: Nuxt): boolean;

参数

nuxt

类型: Nuxt

默认值: useNuxt()

Nuxt 实例。如果未提供,它将通过 useNuxt() 调用从上下文中检索。

getNuxtVersion

返回当前 Nuxt 版本。

类型

function getNuxtVersion(nuxt?: Nuxt): string;

参数

nuxt

类型: Nuxt

默认值: useNuxt()

Nuxt 实例。如果未提供,它将通过 useNuxt() 调用从上下文中检索。