gpt4 book ai didi

javascript - 如何使用 Jade 呈现 node-mssql 语句的返回值?

转载 作者:行者123 更新时间:2023-11-28 19:53:15 37 4
gpt4 key购买 nike

我有一个运行 Express 和 Jade 的 Node.js 服务器。对于 HTTP 请求,服务器将执行以下函数:

function home(req, res) {

res.render("site/index", {recordset: recordset}); //render the Jade template
}

现在我想将一个数组传递给上面的记录集变量,我可以在 Jade 中循环该变量以填充我的 html 页面上的下拉列表。我已经检索了所需的数组,如下所示:

function runSQLSelect() {
sql.connect(config.db, function(err) {
var request = new sql.Request();
request.query("select MyColumn FROM MyTable", function(err, recordset) {
console.log(recordset);
});
});
}

异步运行 SQL 查询并将后续结果传递到我的 Jade 模板中的正确方法是什么?

最佳答案

您将在查询回调中获得 res.render。

function runSQLSelect(callback) {
sql.connect(config.db, function(err) {
var request = new sql.Request();
request.query("select MyColumn FROM MyTable", function(err, recordset) {
console.log(recordset);
callback(recordset);
});
});
}

function home(req, res) {
runQSQLSelect( function(result) {
res.render("site/index", {recordset: result}); //render the Jade template
});
}

请注意,您可能希望使用 setImmediate 以异步方式调用回调,您还可以考虑让 runSQLSelect 回调利用接受两个参数的标准 Node 实践回调(错误,数据)

关于javascript - 如何使用 Jade 呈现 node-mssql 语句的返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23065966/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com