Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

262
Vistas
¿Cómo construir con babel y node 14?

Estoy tratando de construir mi proyecto con babel y el nodo de destino 14.15.4

Mi .babelrc es así

 { "presets": [ [ "@babel/preset-env", { "targets": { "node": true } } ] ] }

Así que esperaba que la salida de babel fuera compatible con el nodo actual. Desafortunadamente, la salida de babel sigue usando la sintaxis require en lugar de import , por lo que no se puede ejecutar con el nodo 14, eso arroja un error

 require("./server.js"); ^ ReferenceError: require is not defined at file:///Users/grzegorz/Projects/charts/server/dist/index.js:3:1 at ModuleJob.run (internal/modules/esm/module_job.js:152:23) at async Loader.import (internal/modules/esm/loader.js:166:24) at async Object.loadESM (internal/process/esm_loader.js:68:5)

¿Alguna idea de lo que estoy haciendo mal?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Lo siguiente le dirá a babel que no transforme módulos:

 { "presets": [ [ "@babel/preset-env", { "targets":{"node":"14"}, "modules": false, } ] ] }

El código de los módulos producidos en esta mansión no contendrá pegamento interoperativo. "modules": false es la clave para esto. Sin él, babel insiste mucho en trans-apilar a la sintaxis compatible con CommonJS. Esta opción deshabilita todas las transformaciones de sintaxis del módulo. Esta opción deja caer el pegamento de compatibilidad y requiere uso.

over 4 years ago · Santiago Trujillo Denunciar

0

nodo

Tipo: cadena | "actual" | verdadero.

Si desea compilar contra la versión actual del nodo, puede especificar "node": true o "node": "current", que sería lo mismo que "node": process.versions.node .

Ejemplo 1

 { "targets": "current" }

ejemplo:2

 { "targets": true }

ejemplo:3

 { "targets": "process.versions.node" }

Alternativamente, puede especificar la versión del nodo en una consulta de lista de navegadores:

 { "targets": "node 12" // not recommended }

Debido a que Node.js puede admitir nuevas funciones de lenguaje en versiones menores, un programa generado para Node.js 12.22 puede arrojar un error de sintaxis en Node.js 12.0. Le recomendamos que siempre especifique una versión secundaria.

 { "targets": "node 12.0" }

¡Información que viene de aquí!

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda