【问题标题】:enable ES2015 default parameters with Babel and JSPM使用 Babel 和 JSPM 启用 ES2015 默认参数
【发布时间】:2015-11-19 18:04:42
【问题描述】:

我是第一次设置 JSPM / Babel,并尝试了一些 ES6 功能。

似乎只有某些功能适用于默认转换,所以我尝试使用 package.json 和 .babelrc 文件启用 ES2015 预设,如下所示:

"presets": ["es2015"]

这似乎没有任何效果。

我正在尝试给一个函数添加一个默认参数,所以想替换下面的函数

exports.width = function(x) {
    if (!arguments.length) return width;
    width = x;
    return this;
};

exports.width = function(x = width) {
    width = x;
    return this;
};

但是,我不断收到Uncaught SyntaxError: Unexpected token = 错误。

我已经安装了预设npm install babel-preset-es2015 --save-dev,并尝试安装单独的插件,但没有骰子。

【问题讨论】:

  • 这适用于我使用 babel 6.2.0。你能验证你的 babel 版本并尝试babel filename.js --presets es2015吗?
  • 是的,它的 5.8.34 和 babel 命令工作正常。我用更多的挖掘回答了我自己的问题,见下文。谢谢!
  • 很高兴你知道了。干杯。

标签: javascript ecmascript-6 babeljs jspm


【解决方案1】:

啊,看来JSPM will only transpile ES6 modules,所以你需要给任何非ES6模块传递一个标志来强制它转译,所以"format es6";在文件顶部。

这很奇怪,因为它正在转换 lambda => 函数,但不是默认参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-04
    • 2019-09-13
    • 2019-02-20
    • 1970-01-01
    • 1970-01-01
    • 2016-04-01
    • 2018-03-06
    相关资源
    最近更新 更多