繁体   English   中英

Node.js中的“SyntaxError:Unexpected token”

[英]“SyntaxError: Unexpected token )” in Node.js

我不断收到以下代码的SyntaxError: Unexpected token )'错误:

passport.use(
  'local-signup',
  new LocalStrategy({
      usernameField: 'email',
      passwordField: 'password',
      passReqToCallback: true, // pass back req to callback
    },
    (req, email, password, done) => {
      // ...
    },
  ),
);

它实际上只是在我放入箭头函数之后才开始。我想我缺少语法方面的东西。 我正在使用airbnb风格指南和linter btw。 运行Node.js LTS。 VS Code不会在编辑器本身中提供任何解析错误。 该代码通过Babel转换为ES2015时有效。 我仍然很好奇它为什么不使用ES6语法。

问题是在两个地方你在函数语法中使用尾随逗号 ,即在函数的最后一个参数之后的逗号。

passport.use(
  'local-signup',
  new LocalStrategy({
      usernameField: 'email',
      passwordField: 'password',
      passReqToCallback: true, // pass back req to callback
    },
    (req, email, password, done) => {
      // ...
    },
//   ^
  ),
// ^
);

此语法是ECMAScript 2017的一部分,在8.0.0之前的Node.js不支持,但可以使用Babel进行转换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM