[英]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.