- 首先我按照官网的方法进行安装配置了egg-mysql(配置文档地址https://www.npmjs.com/package/egg-mysql)
- 但是app上并未挂载上mysql
打印一下app.mysql
'use strict';
const Controller = require('egg').Controller
class HomeController extends Controller{
async index(){
//获取用户表的数据
const { ctx, app } = this;
console.log(app.mysql+'111111111111');
let result = await app.mysql.get("blog_content",{})
console.log(result)
ctx.body=result
}
}
module.exports = HomeController
- 结果打印为undefined
- 仔细检查比对的文档的每一个步骤都没有错,应该是声明出了问题就无法在this.app里获取到mysql
- 于是我修改了一下官方文档config/plugin.js里的内容
官方文档的:
exports.mysql = {
enable: true,
package: 'egg-mysql'
}
我的(exports.mysql -> module.exports.mysql):
module.exports.mysql = {
enable: true,
package: 'egg-mysql'
}
- 结果就成功了,成功拿到app.mysql
但是又来了个bug, 从数据库取出来来的数据乱码了(可能是字符集配置的问题)
ok,继续下一个bug!