NodeJS意外的令牌"。"

时间:2018-03-01 13:29:27

标签: javascript node.js sqlite sequelize.js unexpected-token

我在行config.db.database;中有语法错误(意外令牌"。" )。 这是我在文件中的代码

const config = require('../config/config')
const db = {}

const sequelize = new Sequelize({ // SQL constructor
  config.db.database;
  config.db.user;
  config.db.password;
  config.db.option;
});

这是我所需的config.js代码:

module.export = {
  port: process.env.PORT || 3011,
  db: {
    database: process.env.DB_NAME || 'tabtracker',
    user: process.env.DB_USER || 'tabtracker',
    password: process.env.DB_PASSWORD || 'tabtracker',
    options: {
      dialect: process.env.DIALECT || 'sqlite',
      host: process.env.HOST || 'localhost',
      storage: './tabtracker.sqllite'
    }
  }
}

请帮助,真的不知道如何解决它,我认为做正确的事,因为我正在复制教程代码。

1 个答案:

答案 0 :(得分:1)

该代码中存在两个基本错误:

  1. 您正在使用;分隔对象初始值设定项中的属性;它应该是,,而不是;

  2. 您使用新的(ish)shorthand syntax指定属性,但只能使用简单标识符,而不是config.db.option等属性访问表达式。如果有表达式,则需要显式提供属性名称。

  3. 可能希望

    const sequelize = new Sequelize({ // SQL constructor
      database: config.db.database,
      user: config.db.user,
      password: config.db.password,
      option: config.db.option
    });
    

    ...但您需要仔细检查属性名称(在:之前的左侧)。