使用express中的函数(nodeJS框架)

时间:2017-07-13 00:23:39

标签: javascript node.js express ejs

我正在学习nodeJS,因为我找到了一套好的turtorials。现在它正在教我一个叫做express的好框架。要使用快递,你还必须学习ejs。幸运的是,turtorials也涵盖了这一点。我现在知道你基本上可以嵌入像这样的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进行相同的操作?如果是这样,有没有人有一个很好的链接,可以向我解释它是如何工作的?

1 个答案:

答案 0 :(得分:0)

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);
})