Tengo este codigo:
"use strict";
import browserSync from "browser-sync";
import httpProxy from "http-proxy";
let proxy = httpProxy.createProxyServer({});
y lo he instalado babel-core
y babel-cli
globalmente a través de npm. El punto es cuando trato de compilar con esto en mi terminal:
babel proxy.js --out-file proxified.js
El archivo de salida se copia en lugar de compilarse (es decir, es el mismo que el archivo de origen).
¿Que me estoy perdiendo aqui?
javascript
babeljs
Raúl Vallespin
fuente
fuente
let
cambio avar
pero lasimport
declaraciones permanecen?Respuestas:
Babel es un marco de transformación. Pre-6.x, habilitó ciertas transformaciones de forma predeterminada, pero con el mayor uso de las versiones de Node que admiten de forma nativa muchas funciones de ES6, se ha vuelto mucho más importante que las cosas sean configurables. De forma predeterminada, Babel 6.x no realiza ninguna transformación. Necesita decirle qué transformaciones ejecutar:
y correr
o crea un
.babelrc
archivo que contengay ejecútelo como lo hacía antes.
env
en este caso es un ajuste preestablecido que básicamente dice que se compile todo el comportamiento estándar de ES * en ES5. Si está utilizando versiones de Node que admiten algunos ES6, es posible que desee considerar hacerpara decirle al ajuste preestablecido que solo procese cosas que no son compatibles con su versión de Node. También puede incluir versiones de navegador en sus destinos si necesita compatibilidad con el navegador.
fuente
La mayoría de estas respuestas son obsoletas.
@babel/preset-env
y"@babel/preset-react
son lo que necesita (a partir de julio de 2019).fuente
Tuve el mismo problema con una causa diferente:
El código que estaba intentando cargar no estaba en el directorio del paquete y Babel no transpila por defecto fuera del directorio del paquete.
Lo resolví moviendo el código importado, pero quizás también podría haber usado alguna declaración de inclusión en la configuración de Babel.
fuente
Primero asegúrese de tener lo siguiente
node modules
:npm i -D webpack babel-core babel-preset-es2015 babel-preset-stage-2 babel-loader
A continuación, agregue esto a su archivo de configuración de Webpack (
webpack.config.js
):Referencias:
¡Buena suerte!
fuente
A partir de
2020, Jan
:PASO 1: Instale
Babel presets
:yarn add -D @babel/preset-env @babel/preset-react
PASO 2: Cree un archivo:
babelrc.js
y agreguepresets
:PASO 3: - Instale
babel-loader
:yarn add -D babel-loader
PASO 4: - Agregue la configuración del cargador en su
webpack.config.js
:Buena suerte...
fuente
... y luego creando un
.babelrc
con los ajustes preestablecidos:... resolvió un problema muy similar para mí, con babel
3.8.6
y nodev5.10.1
https://www.npmjs.com/package/babel-preset-node5
https://www.npmjs.com/package/babel-preset-react
fuente
Mismo error, causa diferente:
La transpilación había funcionado antes y luego de repente dejó de funcionar, y los archivos simplemente se copiaron como están.
Resulta que abrí el
.babelrc
en algún momento y Windows decidió agregar.txt
el nombre del archivo. Ahora eso.babelrc.txt
no fue reconocido por Babel. Eliminar el.txt
sufijo solucionó eso.fuente
arregla tu .babelrc
fuente
En el año 2018:
Instale los siguientes paquetes si aún no lo ha hecho:
webpack.config.js
fuente
Solución definitiva
Perdí 3 días en esto
Intenté modificar
webpack.config.js
ypackage.json
archivos, y agregar.babelrc
, instalar y actualizar paquetes a través denpm
, he visitado muchas, muchas páginas, pero nada ha funcionado.¿Qué funcionó? Dos palabras: npm start. Así es.
ejecutar el
comando en la terminal para iniciar un servidor local
...
(tenga en cuenta que puede que no funcione de inmediato, pero tal vez solo después de trabajar un poco en npm porque antes de probar esto, había eliminado todos los cambios en esos archivos y funcionó, así que cuando haya terminado, trátelo como el último resort )
Encontré esa información en esta bonita página . Está en polaco, pero puedes usar el traductor de Google.
fuente