在6.x错误中尚未支持装饰器

时间:2015-12-08 12:40:13

标签: javascript babeljs aurelia

我正在尝试使用Babel来进行Jasmine测试。

每当我尝试运行用Aurelia.js语法编写的测试时,我一直受到装饰器不受支持的错误(我的Babel版本是6.3.15)

我的.babelrc文件中有以下内容:

.babelrc

{
  "presets":["es2015", "stage-0", "stage-1"],
  "plugins":["transform-class-properties", "transform-decorators"]
} 

它失败的片段是:

@inject(HttpClient)
export class Users {
  heading = "test";
  users = [];

肯定Babel应该改变装饰器,因为其中一个预设包含插件吗?即使失败了,我的转换装饰器插件也不会捕获它吗?另外,最初这是用Babel 5.8.23完成的,我仍然看到这个错误,所以我将包号更改为最新

2 个答案:

答案 0 :(得分:3)

装饰品在Babel 6中被破坏了!

Here's babel问题跟踪器中的问题。

基于this reply,可能需要一段时间才能解决问题。

降级至Babel 5后,请确保您的babel选项包含stage: 0es7.decorators选项。您需要在此处配置选项:

答案 1 :(得分:-1)

确保您的babel选项包含以下内容:

optional: [
  "es7.decorators",
  ...
]

他们应该在config.js(对于SystemJS)和karma.conf.js(对于业力)中。