JavaScript Babel文件被复制而不进行转换

我有以下代码:

"use strict";

import browserSync from "browser-sync";

import httpProxy from "http-proxy";

let proxy = httpProxy.createProxyServer({});

并且我已经通过npm 安装babel-corebabel-cli在全球范围内使用。关键是当我尝试在终端上使用此代码进行编译时:

babel proxy.js --out-file proxified.js

输出文件被复制而不是编译(我的意思是,它与源文件相同)。

我在这里想念什么?

回答:

Babel是一个转换框架。在6.x之前的版本中,默认情况下启用了某些转换,但是随着本机支持许多ES6功能的Node版本的使用量增加,可配置性变得更加重要。默认情况下,Babel

6.x不执行任何转换。您需要告诉它要运行哪些转换:

npm install babel-preset-env

并运行

babel --presets env proxy.js --out-file proxified.js

或创建一个.babelrc包含

{

"presets": [

"env"

]

}

并像以前一样运行它。

env在这种情况下,是一个预设,该预设基本上说是将所有标准ES *行为编译为ES5。如果您使用的是支持某些ES6的Node版本,则可能需要考虑

{

"presets": [

["env", { "targets": { "node": "true" } }],

]

}

告诉预设只处理您的Node版本不支持的事情。如果需要浏览器支持,也可以在目标中包括浏览器版本。

以上是 JavaScript Babel文件被复制而不进行转换 的全部内容, 来源链接: utcz.com/qa/416450.html

回到顶部