如何通过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> <% }); %>
渲染局部视图是一样的..等等。试试看