NodeJS意外的令牌“。”

问题描述 投票:0回答:1

我在行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'
    }
  }
}

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

javascript node.js sqlite sequelize.js unexpected-token
1个回答
1
投票

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

  1. 您正在使用;来分隔对象初始值设定项中的属性;它应该是,,而不是;
  2. 您使用新的(ish)shorthand syntax指定属性,但只能使用简单标识符,而不是config.db.option等属性访问表达式。如果有表达式,则需要显式提供属性名称。

你可能想要:

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

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

© www.soinside.com 2019 - 2024. All rights reserved.