egg 自定义插件无法生效
config/plugin.js
'use strict';
const path = require('path');
// had enabled by egg
// exports.static = true;
exports.static = true;
exports.cors = {
enable: true,
package: 'egg-cors',
};
// 数据库插件
exports.mysql = {
enable: true,
package:'egg-mysql',
};
// 参数验证插件
exports.validate = {
enable: true,
package: 'egg-validate',
};
// 时间插件
exports.timeFormate = {
enable: true,
path: path.join(__dirname, '../lib/plugin/timeFormate')
}
lib/plugin/timeFormate/app.js
module.exports = app => {
app.addSingleton('timeFormate', timeFormate);
}
function timeFormate() {
console.log(111111111)
return '1111'
}
lib/plugin/timeFormate/package.json
{
"name": "egg-timeFormate",
"version": "1.0.0",
"eggPlugin": {
"name": "timeFormate"
}
}
最后调用的时候 就变这样了
3 回复
addSingleton
不是干这个用的,要返回的是 object,不是 string。
你如果只是想在 app 上挂个方法,放到 app/extend/application
@atian25 好的 ,谢谢,我去研究研究, 我只想 自己封装一些方法, 然后每次用的时候不需要去require
@xumjs8623 egg 内置的扩展机制完全可以满足你,还是把文档的前几张仔细看一下吧