我是 javascript/node js 的新手。所以关于 js 中函数的一些小事让我很困惑。在这里我有问题。
我在一个文件(appModel.js)中有一个函数,调用getUserById
它从数据库中返回一行id
作为参数。
User.getUserById = function getUserById(id,result){
var koneksi = new newDb();
koneksi.query('Select ID, email, name, status, telp_no, company_id, created_at, updated_at from user where ID = ?',id)
.then(rows=>{
console.log("user: ",rows);
result(null,rows);
})
.catch(err=>{
console.log('error: ',err);
koneksi.close().then(()=>result(err,null));
});
};
module.exports = User;
我通过来自(appRoute.js)的不同文件访问appModel文件
var User = require('../models/appModel');
我试图通过 appRoute.js 访问 getUserById 函数
var _a;
var _check = User.getUserById(req.params.id, function(err,user){
if(err){
_a = err;
}else{
_a = user;
}
return _a;
});
console.log('res', _check);
当我自己打印时_check
,结果是res undefined
所以,我希望这个函数的输出是一个error
或user
本身。我怎么能得到那个?