尽管 Karma 在本地传递,但 Travis CI 上的 Firefox 语法错误

Firefox syntax error on Travis CI though Karma passes locally

问题:

我收到错误消息 Syntax Error: let is a reserved identified 但是,当然,当我查看指定行的文件时,我没有看到任何 let 关键字(也因为我也使用 babel 来 t运行spile 它,请参阅下面的详细信息)。

更新app.bundle.js, line 24 and spec.bundle.js, line 12.

源代码行周围的代码

Or view the full log here


我在用什么:

我正在使用 Webpack 及其 babel-loader 和 babel-polyfill 来捆绑我的代码,因为我希望它 运行 从 ES6 扩展到 ES5。 Here's my Webpack config.

对于 Karma,我 运行 使用 karma-firefox-launcher。 Here's my Karma config.

最后,对于 Travis CI,我是 运行 this config


我做了什么:

我已经下载了 Firefox 31.0(因为在日志中说它是 运行 FF31),然后 运行 karma 使用我在 .travis.yml - karma start karma.config.js. Firefox 按预期弹出,测试 运行,完成并通过。

我有 Google、Whosebug、Github 问题但有用。我很想认为某些东西被缓存了,因此没有选择正确的版本,但我已经检查了 Travis 选项,它说我没有缓存任何东西。有什么想法吗?

非常感谢任何帮助或反馈。

你的 webpack 配置中有一个反斜杠,只有 windows:

是正确的
test: /(js|spec)\.+\.js$/,

此测试不会匹配您在 unix 系统上的源文件路径(路径中有正斜杠),因此 babel 不会转译任何内容

要支持所有系统,应该改为:

test: /(js|spec)(\/|\).+\.js$/,