[英]NodeJS /Express/ ExpressHandlebars - global helper functions
[英]Using functions in express (nodeJS framework)
我正在学习nodeJS,为此我找到了一套不错的教程。 现在,它正在教会我一个叫做express的好的框架。 要使用express,您还必须学习ejs。 幸运的是,我的课程也涵盖了这一点。 我现在知道,您基本上可以像这样嵌入javascipt对象值:
<div><%= valueKey %></div> //Here I have embedded valueKey
您还可以使用如下循环执行操作:
<ul><% (for var i=0; i<5; i++){ %>
console.log(i)
<% } %></ul>
不过,我还没有学到如何在ejs / express中使用其他javascript功能。 例如类似事件。 而且,由于这对于创建站点至关重要,因此我想知道是否还有可能。 所以我的问题基本上是:是否可以像使用普通前端javascript一样用express做相同的事情? 如果是这样,是否有人能很好地向我解释它的工作原理?
EJS是一种模板语言。 模板语言的目的是描述视图的外观。 这意味着,您不应在其中进行业务逻辑。 您应该在EJS中执行的唯一逻辑是影响视图的逻辑。 例如,您提供的for循环,或者说if语句说明数据不存在或不符合要求,则不会渲染显示数据的部分。 下面的代码仅在我们有0多个未读错误消息的情况下才将标签危险置于页面上。
<%if (unreadErrorNumber>0){%>
<span class="label label-danger"><%=unreadErrorNumber%></span>
<% } %>
您应该处理数据并在节点中执行其他逻辑,然后将它们传递给EJS进行渲染和渲染。
app.get("/index", (req, res, next) => {
//Do what it takes to get the correct unreadErrorNumber.
let errorCount = modification(databaseStuff());
res.render("index", unreadErrorNumber:errorCount);
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.