2

刚开始学习 emberjs,感谢您的帮助!

对 angular.js 提出了一个类似的问题并得到了回答(AngularJS:将 HTML 插入视图),但是我无法使用 emberjs 找到答案。

假设我在模板中有 {{A}} 和 A = "html fragment" ,在 app.js 中定义。例如一个html片段如下:

<a href="www.google.com"> Go to Google!  </a>

如果我在视图中渲染 {{A}},我将得到那个“html 片段”的确切字符串,但是我希望有一种方法可以告诉 emberjs 将 {{A}} 渲染为 html。

4

2 回答 2

10

Handlebars 正在转义您的 HTML 片段,以保护您免受可能的恶意用户输入。对您的问题的简短回答是使用 Handlebars 语法raw通过使用 3 个花括号以它的形式呈现 HTML:{{{A}}}

但是,我建议通过该htmlSafe方法传递任何包含 HTML 的字符串来保护自己。可以在文档中找到使用示例。

于 2013-10-20T01:58:41.357 回答
0

我建议在后备场景中也使用一个标志。

{{#if isHtmlSafe}}
  {{A}}
{{else}}
  {{{A}}}
{{/if}}

这里,“isHtmlSafe”是一个属性。

于 2017-09-12T02:47:51.833 回答