互換性

ソース
Nuxt Kit は、モジュールと異なる Nuxt バージョンとの互換性を確認するのに役立つ一連のユーティリティを提供します。

Nuxt Kit のユーティリティは、Nuxt 3、Bridge を使用した Nuxt 2、さらには Bridge を使用しない Nuxt 2 でも使用できます。モジュールがすべてのバージョンと互換性があることを確認するために、checkNuxtCompatibilityassertNuxtCompatibility、および hasNuxtCompatibility 関数を使用できます。これらの関数は、現在の Nuxt バージョンが提供された制約を満たしているかどうかを確認します。また、より詳細なチェックのために isNuxt2isNuxt3、および getNuxtVersion 関数も使用できます。

checkNuxtCompatibility

現在の Nuxt バージョンで制約が満たされているかどうかをチェックします。満たされていない場合は、メッセージの配列を返します。Nuxt 2 のバージョンは、bridge のサポートもチェックします。

使用方法

import { checkNuxtCompatibility, defineNuxtModule } 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
    }
  },
})

タイプ

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

パラメーター

constraints: チェック対象のバージョンとビルダーの制約。以下のプロパティを受け入れます。

プロパティタイプ必須説明
nuxt文字列falseNuxt バージョンをセマンティックバージョン形式で指定します。バージョンは Node.js の形式で定義できます。例: >=2.15.0 <3.0.0
bridgeRecord<string, string | false>falsevitewebpack、または rspack のような特定の Nuxt ビルダーに対するバージョン制約を指定するか、互換性を無効にします。false を使用して無効にします。

nuxt: Nuxt インスタンス。提供されていない場合、useNuxt() の呼び出しを介してコンテキストから取得されます。

assertNuxtCompatibility

現在の Nuxt バージョンで制約が満たされていることをアサートします。満たされていない場合、問題のリストを文字列として含むエラーをスローします。

タイプ

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

パラメーター

constraints: チェック対象のバージョンとビルダーの制約。詳細は checkNuxtCompatibility の制約表を参照してください。

nuxt: Nuxt インスタンス。提供されていない場合、useNuxt() の呼び出しを介してコンテキストから取得されます。

hasNuxtCompatibility

現在の Nuxt バージョンで制約が満たされているかどうかをチェックします。すべての制約が満たされている場合は true を返し、そうでない場合は false を返します。Nuxt 2 のバージョンは、bridge のサポートもチェックします。

使用方法

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
    }
  },
})

タイプ

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

パラメーター

constraints: チェック対象のバージョンとビルダーの制約。詳細は checkNuxtCompatibility の制約表を参照してください。

nuxt: Nuxt インスタンス。提供されていない場合、useNuxt() の呼び出しを介してコンテキストから取得されます。

isNuxtMajorVersion

現在の Nuxt インスタンスが指定されたメジャーバージョンであるかどうかをチェックします。

使用方法

import { defineNuxtModule, isNuxtMajorVersion } from '@nuxt/kit'

export default defineNuxtModule({
  setup () {
    if (isNuxtMajorVersion(3)) {
      // do something for Nuxt 3
    } else {
      // do something else for other versions
    }
  },
})

タイプ

function isNuxtMajorVersion (major: number, nuxt?: Nuxt): boolean

パラメーター

major: チェック対象のメジャーバージョン。

nuxt: Nuxt インスタンス。提供されていない場合、useNuxt() の呼び出しを介してコンテキストから取得されます。

isNuxt3

現在の Nuxt バージョンが 3.x であるかどうかをチェックします。

代わりに isNuxtMajorVersion(2, nuxt) を使用してください。これは @nuxt/kit v5 または将来のメジャーバージョンで削除される可能性があります。

タイプ

function isNuxt3 (nuxt?: Nuxt): boolean

パラメーター

nuxt: Nuxt インスタンス。提供されていない場合、useNuxt() の呼び出しを介してコンテキストから取得されます。

isNuxt2

現在の Nuxt バージョンが 2.x であるかどうかをチェックします。

代わりに isNuxtMajorVersion(2, nuxt) を使用してください。これは @nuxt/kit v5 または将来のメジャーバージョンで削除される可能性があります。

タイプ

function isNuxt2 (nuxt?: Nuxt): boolean

パラメーター

nuxt: Nuxt インスタンス。提供されていない場合、useNuxt() の呼び出しを介してコンテキストから取得されます。

getNuxtVersion

現在の Nuxt バージョンを返します。

タイプ

function getNuxtVersion (nuxt?: Nuxt): string

パラメーター

nuxt: Nuxt インスタンス。提供されていない場合、useNuxt() の呼び出しを介してコンテキストから取得されます。