【发布时间】:2016-04-17 07:38:08
【问题描述】:
我在我创建的一些 Mocha 测试中使用了一些 ES6 功能集,其中包括一些解构语句。这是一个例子:
const {logger, saveProxy, resolved, msg} = helpers;
我大部分时间都在 OSX 上运行这些测试脚本,它的运行就像一个魅力。但是因为 nodejs 服务使用了一些仅适用于 Unix 的二进制文件,所以我也需要在 Linux 中进行测试。没问题,我用 Vagrant VM 切换到 Linux 并指向完全相同的测试脚本并得到以下错误堆栈:
const {logger, saveProxy, resolved, msg} = helpers;
^
SyntaxError: Unexpected token {
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
at Object.Module._extensions..js (module.js:405:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at /usr/lib/node_modules/mocha/lib/mocha.js:216:27
at Array.forEach (native)
at Mocha.loadFiles (/usr/lib/node_modules/mocha/lib/mocha.js:213:14)
at Mocha.run (/usr/lib/node_modules/mocha/lib/mocha.js:453:10)
at Object.<anonymous> (/usr/lib/node_modules/mocha/bin/_mocha:393:18)
at Module._compile (module.js:398:26)
at Object.Module._extensions..js (module.js:405:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Function.Module.runMain (module.js:430:10)
at startup (node.js:141:18)
at node.js:1003:3
在 Linux 和 OSX 中,我都在运行节点版本 5.4.0,因此解构应该不是问题。我无能为力,有人可以帮忙吗?
【问题讨论】:
标签: node.js mocha.js ecmascript-6