Eu tenho este código:
"use strict";
import browserSync from "browser-sync";
import httpProxy from "http-proxy";
let proxy = httpProxy.createProxyServer({});
e eu tenho instalado babel-core
e babel-cli
globalmente através npm. O ponto é quando tento compilar com isso no meu terminal:
babel proxy.js --out-file proxified.js
O arquivo de saída é copiado em vez de compilado (quer dizer, é o mesmo que o arquivo de origem).
O que estou perdendo aqui?
javascript
babeljs
Raul Vallespin
fonte
fonte
let
mudança para,var
mas asimport
declarações permanecem?Respostas:
Babel é uma estrutura de transformação. Antes do 6.x, ele habilitava certas transformações por padrão, mas com o aumento do uso de versões do Node que suportam nativamente muitos recursos ES6, tornou-se muito mais importante que as coisas sejam configuráveis. Por padrão, o Babel 6.x não executa nenhuma transformação. Você precisa dizer a ele quais transformações executar:
e corra
ou crie um
.babelrc
arquivo contendoe execute-o como antes.
env
neste caso, é uma predefinição que basicamente diz para compilar todo o comportamento padrão do ES * para o ES5. Se você estiver usando versões do Node que suportam algum ES6, você pode querer considerar fazerpara dizer à predefinição para processar apenas coisas que não são suportadas por sua versão do Node. Você também pode incluir versões de navegador em seus destinos se precisar de suporte de navegador.
fonte
Muitas dessas respostas são obsoletas.
@babel/preset-env
e"@babel/preset-react
são o que você precisa (a partir de julho de 2019).fonte
Eu tive o mesmo problema com uma causa diferente:
O código que eu estava tentando carregar não estava no diretório do pacote, e o Babel não faz a transpilação por padrão fora do diretório do pacote.
Resolvi movendo o código importado, mas talvez também pudesse ter usado alguma instrução de inclusão na configuração do Babel.
fonte
Primeiro, certifique-se de ter o seguinte
node modules
:npm i -D webpack babel-core babel-preset-es2015 babel-preset-stage-2 babel-loader
Em seguida, adicione ao arquivo de configuração do Webpack (
webpack.config.js
):Referências:
Boa sorte!
fonte
A partir de
2020, Jan
:PASSO 1: Instale o
Babel presets
:yarn add -D @babel/preset-env @babel/preset-react
ETAPA 2: Crie um arquivo:
babelrc.js
e adicionepresets
:PASSO 3: - Instale o
babel-loader
:yarn add -D babel-loader
PASSO 4: - Adicione a configuração do carregador em seu
webpack.config.js
:Boa sorte...
fonte
... e então criar um
.babelrc
com as predefinições:... resolveu um problema muito semelhante para mim, com babel
3.8.6
e nodev5.10.1
https://www.npmjs.com/package/babel-preset-node5
https://www.npmjs.com/package/babel-preset-react
fonte
Mesmo erro, causa diferente:
A transpilação já havia funcionado antes e de repente parou de funcionar, com os arquivos simplesmente sendo copiados como estão.
Acontece que eu abri o
.babelrc
em algum ponto e o Windows decidiu anexar.txt
ao nome do arquivo. Agora, isso.babelrc.txt
não foi reconhecido por babel. Remover o.txt
sufixo corrigiu isso.fonte
conserte seu .babelrc
fonte
No ano de 2018:
Instale os seguintes pacotes, se ainda não o fez:
webpack.config.js
fonte
Solução final
Eu perdi 3 dias nisso
Eu tentei modificar
webpack.config.js
epackage.json
arquivos, e adicionando.babelrc
, instalar e atualizar pacotes vianpm
, que eu visitei muitas, muitas páginas, mas nada funcionou.O que funcionou? Duas palavras: npm start. Está certo.
execute o
comando no terminal para lançar um servidor local
...
(lembre-se de que pode não funcionar de imediato, mas talvez só depois de fazer algum trabalho no npm, porque antes de tentar fazer isso eu havia excluído todas as alterações nesses arquivos e funcionou, então, depois de realmente terminar, trate-o como o último resort )
Eu encontrei essa informação nesta página legal . Está em polonês, mas sinta-se à vontade para usar o Google Translate nele.
fonte