如何通过node.js,express和ejs在string中传递html标记

我用Express和EJS使用Node.js,我想将string中的html标签传递给浏览器,如下所示:

listRequests.forEach(function(key) { messages.push("You have a message from <b>" + key.username + "</b>"); }); 

后来在我的代码中:

 res.render('/wallets', { messages : messages, ... }); 

在我的html模板中,我有类似的东西

 <h2>Messages</h2> <% messages.forEach(function(message) { %> <p><%= message %></p> <% }); %> 

问题是:浏览器显示带有诸如<b>John</b>而不是John的标签的文本

用ejs渲染原始的html,使用<% – 你的var%>。 在你的情况下:

 <h2>Messages</h2> <% messages.forEach(function(message) { %> <p><%- message %></p> <% }); %> 

渲染局部视图是一样的..等等。试试看