mic*_*obg 2 javascript babel ecmascript-6
我使用grunt-babel来编译我的ES6代码.但是Warning: dist/app.js: Unexpected token (321:9) Use --force to continue.当我尝试使用{...obj}复制和扩展对象时它会返回.以下代码在Chrome v61的控制台中运行完美,但Babel不喜欢它.问题是什么?
let a = { a: 12 };
let b = { ...a, b: 15 };
Run Code Online (Sandbox Code Playgroud)
我正在使用env预设.(babel-core v.6.26.0和babel-preset-env v.1.6.1)
对象的spread属性不是ES6的一部分.目前,截至2017年12月,它是ECMAScript第3阶段提案的一部分.您可以在此处查看提案.
您需要一个babel预设,其中包含尚未正式使用该语言的功能.在babel-preset-env不包括这些功能.
要解决您的问题,您可以使用像babel-preset-stage-3这样的东西,并将"stage-3"添加到您的预设列表中.babelrc.
边注:
ES6中对象的扩展语法的替代方法是使用Object.assign
let b = Object.assign({}, a, { b: 15 });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1239 次 |
| 最近记录: |