javascript - 渲染从 SailsJS Controller 返回的 HTML 内容

标签 javascript html node.js sails.js ejs

我是 SailsJS 新手,正在尝试。我想将一些 HTML 内容保存到数据库中,在请求时检索并将其呈现为 HTML。我生成了一个 sails 模型和一个 Controller 来完成此任务。

型号:

attributes: {
    html: "string"
}

Controller 操作:

find: function(req, res) {
    Item.findOne({
        'id': req.params['id']
    }, function(err, item) {
        console.log(item.html);

        res.view({
            item: item
        });
    })
}

显然,当我在 View 中使用它时,html 标签会被转义并呈现为文本。

<%= item.html %>

Actual:
&lt;p&gt;Sample HTML content&lt;/p&gt;

Expected:
<p>Sample HTML content</p>

我猜测 Sails/EJS 在渲染之前转义了 HTML。我想知道是否有一个选项可以覆盖此行为?或者您能否让我知道渲染从 Controller 返回的 HTML 内容的其他选项?非常感谢!

最佳答案

刚刚发布维克给出的答案。

实际上,进一步深入研究 EJS [到目前为止我只在 SailsJS 中查找] 帮助我解决了这个问题。使用 <%- code %> 标签实际上解决了我的问题。希望这对将来的人有所帮助。

这实际上对我有帮助。

关于javascript - 渲染从 SailsJS Controller 返回的 HTML 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21820742/

相关文章:

javascript - 根据字符串路径生成div元素

javascript - 访问条件 View 的下拉列表的选定状态

html - 有没有CSS生成器

node.js - 添加到 sails 中的集合

node.js - cookie 和 cookieSession 的区别?

javascript - mongodb 将值插入数组变量

javascript - 使用 React Router 进行按钮导航

jquery - 在输入焦点上更改占位符范围的字体颜色

javascript - 如何通过 Javascript 播放具有 If 条件的音频

javascript - 在数组(或 objs)上迭代异步的最聪明/最干净的方法是什么?