车把不会呈现 HTML 图片标签? (使用节点)

handlebars won't render HTML image tag? (using NodeJS)

我正在尝试渲染带有车把的 HTML 图像标签。 HTML 确实正确传递到车把。 (因此确实传递到网页,但未呈现图像。)我该如何解决这个问题?

在我的 .HBS 文件中有:

{{HTMLforImage}} {{image}} {{alt}}

在我的 .js 文件中我有:

  res.render('imageHub', {
  HTMLforImage: "<img src = ",
  image: "\"" + req.body.imageLink + "\"",
  alt: " alt = \"raccoon\">"
});

其中 imageHub 是页面把手,应该呈现 HTML,但我只是将 HTML 传递到网页上,而不是发布图片。任何有关如何解决此问题的想法都将不胜感激。

{{HTMLforImage}} 将转义标记。试试三括号:{{{HTMLforImage}}}

使用三重大括号转义 HTML 特殊字符,例如 <> 字符:

{{HTMLforImage}} {{image}} {{alt}}

你也有 <image ... 但应该是 <img ...

最佳做法是将车把内容更改为:

<img src="{{imageLink}}" alt="{{alt}}" />

并仅传递所需的数据,如下所示:

res.render('imageHub', {
  imageLink: req.body.imageLink,
  alt: 'raccoon'
})