webpack 搭建全栈项目 问题一

项目说明:

利用 webpack 搭建全栈项目;
后端 nodejs;
前端 vue ;
后端框架 express ;
ORM框架 sequelize 。

问题:安装 sequelize 时同时安装上了 mysql2 , 但报错未安装,详情如下:

代码如下:

const { Sequelize } = require('sequelize');
const sequelize = new Sequelize('advdb', 'root', '123456', {
    host: 'localhost',
    dialect:'mysql' /* 选择 'mysql' | 'mariadb' | 'postgres' | 'mssql' 其一 */
  });

module.exports = sequelize;

报错如下:

c:\Users\Administrator\Desktop\adv\dist\index.js:66856
        throw new Error(`Please install ${moduleName} package manually`);
        ^

Error: Please install mysql2 package manually
    at ConnectionManager._loadDialectModule (c:\Users\Administrator\Desktop\adv\dist\index.js:66856:15)
    at new ConnectionManager (c:\Users\Administrator\Desktop\adv\dist\index.js:75089:21)
    at new MysqlDialect (c:\Users\Administrator\Desktop\adv\dist\index.js:75396:30)
    at new Sequelize (c:\Users\Administrator\Desktop\adv\dist\index.js:87916:20)
    at Object../server/models/db.js (c:\Users\Administrator\Desktop\adv\dist\index.js:354:19)
    at __webpack_require__ (c:\Users\Administrator\Desktop\adv\dist\index.js:20:30)
    at Object../server/models/Admin.js (c:\Users\Administrator\Desktop\adv\dist\index.js:325:19)
    at __webpack_require__ (c:\Users\Administrator\Desktop\adv\dist\index.js:20:30)
    at Object../server/models/sync.js (c:\Users\Administrator\Desktop\adv\dist\index.js:399:1)
    at __webpack_require__ (c:\Users\Administrator\Desktop\adv\dist\index.js:20:30)
[nodemon] app crashed - waiting for file changes before starting...

解决方法如下:

const { Sequelize } = require('sequelize');
const mysql2 =require('mysql2');
const options = {
    host: 'localhost',
    dialect:'mysql' /* 选择 'mysql' | 'mariadb' | 'postgres' | 'mssql' 其一 */
  }
if (options.dialect === 'mysql') {
options.dialectModule = mysql2;
}
const sequelize = new Sequelize('advdb', 'root', '123456', options);
module.exports = sequelize;

解决方法参考地址

解决方法参考地址

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值