1

我正在尝试使用节点 server.js 运行我的项目,但出现以下错误。

/Library/WebServer/Documents/PROJECT/node_modules/express-validator/lib/express_validator.js:75
        chain[name] = (...options) => {
                       ^^^

SyntaxError: Unexpected token ...
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/Library/WebServer/Documents/PROJECT/node_modules/express-validator/index.js:1:80)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)

我正在使用 Express.js 框架。上次我工作时它工作得很好。

4

2 回答 2

1

经过大量搜索后,我终于发现,对于我正在使用的使用 nodejs 旧版本构建的项目之一,node@4.4.7并且在我的本地计算机上更改了节点版本后,我使用以下命令:

nvm ls   // to check out what versions of Node.js are installed on your machine

->       v4.4.7
         v8.9.1
         system
default -> 4.4.7 (-> v4.4.7)

要将 Node.js 从切换node@4.4.7node@8.9.1我使用了以下命令:

nvm use v8.9.1

为了验证我再次检查nvm ls,现在它显示了。

    v4.4.7
->       v8.9.1
         system
default -> 4.4.7 (-> v4.4.7)
于 2018-07-27T09:32:02.083 回答
0

是的,ES6 中可用的扩展运算符将在节点 8 的版本 8 及更高版本中可用。

于 2018-07-27T10:06:26.657 回答