我正在尝试使用 ejs 将数据从我的 Nodejs 服务器发送到我的 html。但问题是我无法读取脚本中的变量。
Nodejs 服务器:
exports.getIndex = (req, res, next) => { var alert = req.query.msg; // connect to your database mssql.connect(config, function (err) { if (err) console.log(err); var request = new mssql.Request(); request.query( "SELECT startDate, endDate from Reservations", function (err, recordset) { if (err) console.log(err); events = []; recordset.recordset.forEach((element) => { reserv = {}; reserv.start = element.startDate; reserv.end = element.endDate; events.push(reserv); }); res.render("index", { alert: alert, events: events, }); } ); }); };
我需要像这样读取 html 中的事件:
var events = <%= events %>
但我收到控制台错误,表明事件不存在。知道如何解决这个问题或者如何让它以不同的方式工作吗?
我尝试创建 div 并直接分配,但没有成功。
您似乎使用
res.render
将events
正确传递到您的 ejs 视图,因此,如果您确信events
已填充并且如果您没有任何数据库错误,则可以像这样访问events
数组中的对象: