【发布时间】:2020-05-01 02:53:47
【问题描述】:
我想将我的 app.js 中的数组传递给我的 EJS 文件中的 JavaScript。在我的循环函数中,我想将一些数据填充到对象中,以将它们推送到 JS 数组中以用于约会日历。但我无法传递数据.. 这是我的代码片段:
app.js:
router.route ('/torauswahl').get(function (req, res) {
Buchung.find(function (err, buchungen) {
if (err)
return res.send(err);
res.render('torauswahl',{
buchungen: JSON.stringify(buchungen)
});
});
});
还有我 EJS 中的 JS:
var appointments = [];
var appointment = {};
var buchungArray = <%=buchungen %>;
for(var i=0; i < buchungArray.length; i++) {
var monat = 1 + buchungArray[i].from.getMonth();
var von = -1 + buchungArray[i].from.getHours();
var vonMin = buchungArray[i].from.getMinutes();
var bisMonat = 1 + buchungArray[i].from.getMonth();
var bis = -1 + buchungArray[i].to.getHours();
var bisMin = buchungArray[i].to.getMinutes();
if (bisMin === 0) {
bisMin = bisMin + "0";
}
if (vonMin === 0) {
vonMin = vonMin + "0";
}
appointment[i] = {
calendar: buchungArray[i].tor,
start: new Date(buchungArray[i].from.getDate(), monat, buchungArray[i].from.getDay(), von, vonMin, 0),
end: new Date(buchungArray[i].to.getDate(), bisMonat, buchungArray[i].to.getDay(), bis, bisMin, 0)
}
appointments.push(appointment[i]);
}
在我声明 buchungArray 的地方,IntelliJ 向我显示错误:预期表达式。 我感谢任何帮助! 干杯,Mert
【问题讨论】:
-
渲染的客户端JS是什么样子的?
-
“在我声明 buchungArray 的地方,IntelliJ 向我显示了一个错误”——嗯,大概它正在尝试将您的 EJS 模板视为 JavaScript ......它不是。代码在渲染并发送到浏览器时是否有效?
-
这是上面的第二个代码部分。
-
没有。第二个代码部分显示的是 EJS 模板,而不是你渲染它时得到的 JavaScript。
-
@Quentin 我不知道.. 我是学习 EJS 的新手,必须使用我在 app.js 中传递的渲染变量执行 JavaScript
标签: javascript node.js mongodb mongoose ejs