【发布时间】:2022-02-03 02:21:39
【问题描述】:
来自 JAVA 背景,我发现 EJS 很有趣。但是,我似乎无法弄清楚如何在循环时从不同的函数中获取对象。在下面的示例中,我试图在 ReadingLog 中调用一个名为 chapters 的异步函数,该函数查询数据库并返回每本书的章节:
<%
entries.forEach(function(i){
let chapters = await ReadingLog.chapters(i.book_uid);
total_mins=parseFloat(total_mins)+parseFloat(i.minutes);
console.log('Date:'+i.date.toDate().toISOString());
let tzdate = datetimeutil.converttz(i.date.toDate(),"America/Montreal");
let mdate = datetimeutil.convert_to_str(i.date.toDate());
%>
<tr>
<td><%= mdate %></td>
<td><%= i.book_title %></td>
<td>
<% if(i.language!=null && i.language == "fr"){ %>Fran&c¸ais<% } %>
<% if(i.language!=null && i.language == "en"){ %>English<% } %>
<% if(i.language!=null && i.language == "es"){ %>Español<% } %>
</td>
%>
无论如何要在 EJS 中实现它?
谢谢
【问题讨论】:
-
请注意,即使您来自 Java,那不是您如何命名变量和方法。在 JS 中,就像在 Java 中一样,变量和方法使用带有小写首字母的 camelCase。没有snake_case_naming,坚持你工作的语言的编码约定=)