透過 100+ 個技巧的集合來學習 Nuxt!

相容性

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
    semver 格式的 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
    semver 格式的 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
    semver 格式的 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() 呼叫從上下文中檢索。