我有一个mysql表,其中存储了一些用户可用的插件。我编写了一个安装所有插件路由的函数,它就像这样(留下错误处理和文件检查):
var requireEnrolPlugins = function(app){
connection.query('Select name FROM ... where type = ?,[enrol],
(err,rows,fields) => {
async.eachOfSeries(rows,function(item,key,eachOfCallback){
require('path/to/plugin-dir/ ' + item.name + '/routes.js')(app);
eachOfCallback();
})
})
}
在index.js文件中调用此函数,其中挂载了所有路由,然后在app.js主文件中声明index.js文件 如果我试着要求没有appEngine处理程序,它就可以了。 但是,如果我在需要时添加(app)引擎,则会抛出此错误:
require(...) is not a function
at C:\Users\username\Desktop\node-
projects\project\functions\general_functions.js:70:33
at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:445:3)