我想返回节点js中的数据库值并作为ejs文件中的变量传递。节点Js回调函数
波纹管是我使用的代码。 它没有返回值。
function getExternalLocation(cb) {
mssql.connect(msSqlSettings, function (err) {
if (err) {
cb(err);
}
var getQuery = "SELECT [Title] FROM [dbo].[StyleTemplates] " ;
//console.log(getQuery);
var request = new mssql.Request();
// query to the database and get the data
request.query(getQuery, function (err, rows) {
mssql.close();
cb(err, rows);
});
});
}
exports.eejsBlock_editbarMenuLeft = function (hook_name, args, cb) {
var userData = getExternalLocation(args, function(err, rows) {});
args.content = args.content + eejs.require(
'ep_resources/templates/editbarButtons.ejs', {
userData: userData
});
return cb();
})
userData
没有返回任何值。
可能重复[如何从异步调用返回响应?](https://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an -asynchronous-call) –
如果你不使用它,为什么要实现一个回调?小提示*行*包含你想要的 –
基本上,我想返回数据库存储在“行”变量中的所有值。但是当我使用**返回行时,它不会返回任何值** – Sushil