I want to return database value in node js and pass as a variable in ejs file.
Bellow is the code, Which I used. it did not return value.
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 did not return any value;
var userData = getExternalLocation(args, function(err, rows) {});
cb(err, rows);
getExternalLocation(args, function(err, rows) {
console.log(err);
console.log(rows);
});
exports.eejsBlock_editbarMenuLeft = function (hook_name, args, cb) {
In order to understand how to get the results of your work out to the rest of your application. This is, in my understanding the hardest thing to understand about JS, so ask questions, work on it a lot, have a look at callback pyramids, the Async library, and finally try and understand promisesPromises are the de-facto way to do things now, so in a lot of ways you may as well jump straight to using those - but it's definitely good to understand the function passing style of JavaScript as a general concept.Cheers,Alex
let getDatav= getExternalLocation(args, function(err, rows) {
console.log(err);
return rows;
});
getExternalLocation(args, function(err, rows) {
console.log(err);
console.log(rows);
});
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();
})To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/1a9233d5-61bf-4e89-a10f-3fd12495f07f%40googlegroups.com.--
Job board: http://jobs.nodejs.org/
New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
---
You received this message because you are subscribed to the Google Groups "nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
To post to this group, send email to nod...@googlegroups.com.
exports.eejsBlock_editbarMenuLeft = function (hook_name, args, cb) { co(function*(co_next){ let [err,userData] = yield getExternalLocation(args, co_next);
args.content = args.content + eejs.require('ep_resources/templates/editbarButtons.ejs', {userData : **userData** });
return cb();
})()
})