意外的令牌=

Chr*_*ams 8 node.js

我不确定在Node.js中可能导致此错误的原因,因为我以前从未见过它,也无法在线找到其他问题.

Message:
    Unexpected token =
Stack:
SyntaxError: Unexpected token =
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:404:25)
    at Object.Module._extensions..js (module.js:432:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:311:12)
    at Module.require (module.js:366:17)
    at require (module.js:385:17)
    at Object.<anonymous>     (/Projects/api/test/integration/models/article.js:3:15)
Run Code Online (Sandbox Code Playgroud)

导致错误的文件具有以下内容:

'use strict';

var Article = require('../../../models/article')
Run Code Online (Sandbox Code Playgroud)

世界上为什么会=导致错误?

编辑1 - 添加所需的article.js:

'use strict';

class ArticleModel {

  constructor(options = {}) {
    this.options = options
  }

}

module.exports = ArticleModel
Run Code Online (Sandbox Code Playgroud)

jfr*_*d00 8

node.js 5.0尚不支持所有ES6功能.特别是,它还不支持默认参数.

所以这一行:

constructor(options = {}) {
Run Code Online (Sandbox Code Playgroud)

是什么导致=分配错误.

请参阅此表,了解node.js 5.0中支持的功能.


您可以使用旧式方法替换默认参数分配:

constructor(options) {
    this.options = options || {};
}
Run Code Online (Sandbox Code Playgroud)