透過 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() 呼叫從內容中擷取。