Node.js Jade模板引擎,将HTML呈现为文本

Node.js Jade模板引擎,将HTML呈现为文本,node.js,pug,Node.js,Pug,我的.jade文件中有这段代码: each item in items li= item.name + " " + item.inStock + " <a href='/item/"+item.uniqueId+"'>buy now!</a>" 项目中的每个项目 li=item.name+“”+item.inStock+“” 这样做的结果是: Of Mice and Men 1000 <a href='/item/1'>buy now!</a&g

我的
.jade
文件中有这段代码:

each item in items
  li= item.name + " " + item.inStock + " <a href='/item/"+item.uniqueId+"'>buy now!</a>"
项目中的每个项目
li=item.name+“”+item.inStock+“”
这样做的结果是:

Of Mice and Men 1000 <a href='/item/1'>buy now!</a>
[...]
人类和老鼠1000
[...]
如您所见,
不是以HTML格式呈现,而是以纯文本形式呈现。有没有办法将其呈现为HTML,以便创建链接


谢谢

请尝试使用未scaped运算符:

li!= ...

它应该可以做到这一点。

更好的是,它消除了
的安全问题=。(因打字错误而编辑)感谢你们两位。我可以问一下,除了经验之外,你在哪里找到这些信息的?我试图查看Jade主页,但很少有关于如何处理从Express传递的变量的信息。也许如果你能给我解释一下这是如何工作的,会更清楚一些,因为我还是不知道,它位于github页面的自述文件中:“默认情况下,出于安全考虑,代码buffered by=是转义的,但是为了输出未转义的返回值,您可以使用!=”。wtfcoder的解决方案(如果我可以代表他发言的话!)来自经验和对模板引擎特性的良好使用。他使用jade的语法来呈现锚,而不是用javascript代码处理的字符串。它使用带插值的标记文本支持,然后是嵌套的标记。它在上的自述中有所列出,但我同意示例可能更好/更清晰,我已经使用Jade将近一年了,所以我做了很多实验。在渲染方面,它没有给出特殊的行为来表达,因为j=require('jade')可以观察到相同的结果;tmpl=j.compile(templateStr);输出=tmpl(模板数据)编号。。。如果你在发帖前阅读了整个问题,你会发现我说的“正如你所看到的,
不是以HTML格式呈现的,而是以纯文本形式呈现的。”
each item in items
  li
   | #{item.name} #{item.inStock}
   a(href="/item/"+item.uniqueId) buy now!