nuxt logo

Traducción de Documentación (No Oficial)

Compatibilidad

Nuxt Kit proporciona un conjunto de utilidades para ayudarte a verificar la compatibilidad de tus módulos con diferentes versiones de Nuxt.

Las utilidades de Nuxt Kit se pueden usar en Nuxt 3, Nuxt 2 con Bridge e incluso Nuxt 2 sin Bridge. Para asegurarte de que tu módulo sea compatible con todas las versiones, puedes usar las funciones checkNuxtCompatibility, assertNuxtCompatibility y hasNuxtCompatibility. Estas verificarán si la versión actual de Nuxt cumple con las restricciones que proporciones. También puedes usar las funciones isNuxt2, isNuxt3 y getNuxtVersion para verificaciones más detalladas.

checkNuxtCompatibility

Verifica si se cumplen las restricciones para la versión actual de Nuxt. Si no, devuelve un array de mensajes. La versión Nuxt 2 también verifica el soporte de bridge.

Uso

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('Se encontraron problemas de compatibilidad con Nuxt:\n' + issues.toString())
    } else {
      // hacer algo
    }
  }
})

Tipo

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

Parámetros

constraints: Restricciones de versión y constructor para verificar. Acepta las siguientes propiedades:

PropiedadTipoRequeridoDescripción
nuxtstringfalseVersión de Nuxt en formato semver. Las versiones pueden definirse al estilo de Node.js, por ejemplo: >=2.15.0 <3.0.0.
bridgeRecord<string, string | false>falseEspecifica restricciones de versión o desactiva la compatibilidad para constructores específicos de Nuxt como vite, webpack o rspack. Usa false para desactivar.

nuxt: Instancia de Nuxt. Si no se proporciona, se obtendrá del contexto a través de la llamada useNuxt().

assertNuxtCompatibility

Asegura que se cumplan las restricciones para la versión actual de Nuxt. Si no, lanza un error con la lista de problemas como cadena.

Tipo

// @errors: 2391
import type { Nuxt, NuxtCompatibility } from '@nuxt/schema'
// ---cut---
function assertNuxtCompatibility(constraints: NuxtCompatibility, nuxt?: Nuxt): Promise<true>;

Parámetros

constraints: Restricciones de versión y constructor para verificar. Consulta la tabla de restricciones en checkNuxtCompatibility para más detalles.

nuxt: Instancia de Nuxt. Si no se proporciona, se obtendrá del contexto a través de la llamada useNuxt().

hasNuxtCompatibility

Verifica si se cumplen las restricciones para la versión actual de Nuxt. Devuelve true si se cumplen todas las restricciones, de lo contrario devuelve false. La versión Nuxt 2 también verifica el soporte de bridge.

Uso

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

export default defineNuxtModule({
  async setup (_options, nuxt) {
    const usingNewPostcss = await hasNuxtCompatibility({ nuxt: '^2.16.0' }, nuxt)
    if (usingNewPostcss) {
      // hacer algo
    } else {
      // hacer otra cosa
    }
  }
})

Tipo

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

Parámetros

constraints: Restricciones de versión y constructor para verificar. Consulta la tabla de restricciones en checkNuxtCompatibility para más detalles.

nuxt: Instancia de Nuxt. Si no se proporciona, se obtendrá del contexto a través de la llamada useNuxt().

isNuxtMajorVersion

Verifica si la instancia actual de Nuxt es de la versión principal especificada.

Uso

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

export default defineNuxtModule({
  async setup () {
    if (isNuxtMajorVersion(3)) {
      // hacer algo para Nuxt 3
    } else {
      // hacer otra cosa para otras versiones
    }
  }
})

Tipo

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

Parámetros

major: Versión principal para verificar.

nuxt: Instancia de Nuxt. Si no se proporciona, se obtendrá del contexto a través de la llamada useNuxt().

isNuxt3

Verifica si la versión actual de Nuxt es 3.x.

Usa isNuxtMajorVersion(2, nuxt) en su lugar. Esto puede ser eliminado en @nuxt/kit v5 o en una futura versión principal.

Tipo

function isNuxt3(nuxt?: Nuxt): boolean;

Parámetros

nuxt: Instancia de Nuxt. Si no se proporciona, se obtendrá del contexto a través de la llamada useNuxt().

isNuxt2

Verifica si la versión actual de Nuxt es 2.x.

Usa isNuxtMajorVersion(2, nuxt) en su lugar. Esto puede ser eliminado en @nuxt/kit v5 o en una futura versión principal.

Tipo

function isNuxt2(nuxt?: Nuxt): boolean;

Parámetros

nuxt: Instancia de Nuxt. Si no se proporciona, se obtendrá del contexto a través de la llamada useNuxt().

getNuxtVersion

Devuelve la versión actual de Nuxt.

Tipo

function getNuxtVersion(nuxt?: Nuxt): string;

Parámetros

nuxt: Instancia de Nuxt. Si no se proporciona, se obtendrá del contexto a través de la llamada useNuxt().