Aurelia 模块中 @ 错误处的意外标记

Unexpected token at @ error in Aurelia module

当我 运行 Aurelia 应用程序时,我在 Chrome 中收到以下错误。无论我有 @,我都会收到错误消息。例如,@customElement@bindable 给出错误。

我的 config.js 如下所示:

System.config({
  "baseURL": "/",
  "transpiler": "babel",
  "babelOptions": {
    "optional": [
      "runtime"
    ]
  },
  "paths": {
    "*": "*.js",
    "github:*": "jspm_packages/github/*.js",
    "npm:*": "jspm_packages/npm/*.js"
  }
});

@customElement@bindable被称为decorators,这是JavaScriptES7的实验特性,所以目前浏览器不支持。

但是 babel 也可以将此功能转译回 ES5,然后可以由普通浏览器执行

您只需要在 babel 中使用 es7.decorators option 配置此功能:

  "babelOptions": {
    "optional": [
      "es7.decorators",
      "runtime"
    ]
  },

您可以随时检查 Aurelia navigation skeleton as a reference for the config.js 或其他设置选项。