我想使用其他文件中的某些方法。我唯一的问题是文件已经使用了其他一些参数。
这是我要使用的文件。我的api调用将有一些方法。模型是我传递的数据库模型,而app是express()本身。该文件称为测试。
const testFile = require('test');
module.exports = function (app, models) {
router.get('/', function (req, res) {
testFile.test();
});
return router;
};
现在,我想从该文件中调用测试方法。 所以我创建了这个,但是这不起作用。我得到的错误测试不是函数。
app.use('/api/test', require('./routes/test.js')(app, models));
app.use('/api/main', require('./routes/main.js')(app, models));
这是我的index.js:
targetSdkVersion 25
从我的其他文件中调用方法测试的正确方法是什么?
答案 0 :(得分:1)
因此,您要导出一个函数,该函数又仅返回路由而不返回函数测试。要访问测试功能,您需要采用这种方式,
module.exports = function(app, models) {
router.put('/', function (req, res) {
});
function test() {};
return {
router: router,
testFun: test
};
}
在另一个文件中
const testFile = require('test')(app, models); // Correct path from current directory
module.exports = function (app, models) {
router.get('/', function (req, res) {
testFile.testFun();
});
return router;
};