首页 > 解决方案 > 初始化 Sequelize 时“Sequelize 不是构造函数”

问题描述

我正在尝试在我的代码中使用 ES6 设置 Sequelize,但收到此错误:

TypeError: _sequelize.Sequelize 不是构造函数

这是我的sequelize.js文件:

import { Sequelize } from 'sequelize';

import config from './config';

const db = new Sequelize({
  ...config.database,
  pool: {
    max: 5,
    min: 0,
    idle: 10000,
  },
});

export default db;

这是.babelrc文件:

{
  "presets": ["@babel/preset-env", "minify"],
  "plugins": [
    [
      "module-resolver",
      {
        "root": ["./", "./src"]
      }
    ]
  ]
}

标签: javascriptnode.jsecmascript-6sequelize.jsbabeljs

解决方案


对我使用 es6 来说,我愿意


import Sequelize from 'sequelize';

const db = new Sequelize(process.env.DB_NAME, process.env.DB_USER, process.env.DB_PASSWORD, {
  host: process.env.DB_HOST,
  dialect: 'mysql',
  pool: {
    max: 5,
    min: 0,
    idle: 10000
  },
  flags: '-FOUND_ROWS',
  logging: false
});



我的 babel.config.js 文件是

const presets = [
    "@babel/preset-env",
];
const plugins = [
    "@babel/plugin-syntax-dynamic-import",
    "@babel/plugin-proposal-class-properties",
    "@babel/plugin-transform-object-assign",
    "@babel/plugin-transform-classes",
    [
        "@babel/plugin-transform-runtime",
        {

            "regenerator": true
        }
    ]
]
module.exports = {presets, plugins};



推荐阅读