javascript - NodeJS 意外 token "."

标签 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. 您正在使用 ; 来分隔对象初始值设定项中的属性;它应该是 ,,而不是 ;

  2. 您正在使用 new(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
});

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

关于javascript - NodeJS 意外 token ".",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49050756/

相关文章:

javascript - 为什么onClick会导致循环?

node.js - 蒙戈错误。发现(不可变)字段 '_id' 已更改为 _id

javascript - 了解 AudioBuffer 到 ArrayBuffer 的转换

javascript - 如何在 PayPal 智能按钮交易中发送自定义数据字段

javascript - 直接在 HTML 中来自 JSON 的 Angular 数据

javascript - 正文解析器已弃用未定义扩展 : provide extended option

java - 我可以让 SQLiteDatabase 提示缺少参数吗?

sqlite - 从现有模式生成表关系图(对于 Sqlite 数据库)

Qt 和 SQLite 无法处理 'NULL' 值还是我做错了什么?

javascript - 为什么输入的数字不是 "move"的颜色?