javascript - 如何设置babel导出到es4 javascript?

标签 javascript node.js babeljs

我是babel的新手,但我希望它能导出AMD风格的js代码,同时也兼容chrome55和IE11。

我有这个

var babel = require("babel-core");



var result = babel.transform("let x = 1;", {
    plugins: ["transform-es2015-modules-amd"]
});

console.log(result.code);

但是输出是

define([], function () {
  "use strict";

  let x = 1;
});

这是不对的,因为 IE11 中没有 let 支持。

有人知道这是怎么回事吗?

谢谢

最佳答案

只需将 es2015 预设添加到该选项即可。像这样:

var result = babel.transform("let x = 1;", {
    presets: ["es2015"],
    plugins: ["transform-es2015-modules-amd"]
});

将导致:

define([], function () {
  "use strict";

  var x = 1;
});

您应该先安装它:

npm install babel-preset-es2015 --save-dev

关于javascript - 如何设置babel导出到es4 javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41653399/

相关文章:

javascript - 制作一个根据时间改变其行结构的表

javascript - knockout JS 嵌套数组。将项目添加到子数组

javascript - 如何将CURL请求转换为axios请求?

node.js - 编译完所有必需的依赖项后可以删除node_modules文件夹吗?

javascript - 如何在 React JS 中将 props.children 添加到带有 child ="xyz"属性的开始和结束标记内?

javascript - Webpack 缺少模块 'Module Not Found'

javascript - 在 R Shiny 中使用 Enter 键和操作按钮

javascript - 完成后,Node.js GC 键中的 Object.keys(o).forEach(...) 迭代是否会发生?

javascript - 尝试将 Braintree 嵌套回调转换为 NodeJS 异步/等待语法

javascript - 使用 require ('babel/register' ) 与在运行前转译代码