node.js - 如何在nodejs中显示来自mongodb数据库的html
问题描述
我一直试图弄清楚如何在 mongodb 表中显示 html 标签。每次我通过浏览器查看数据时,它都会显示 html 的文本。例子:
我在 mongodb 数据库表中有这个:
测试 在网页上查看时应显示为:测试
但相反,它显示测试
解决方案
你的问题
我以前没有使用过EJS,但我假设它是您如何将数据库中的 HTML 字符串插入 EJS 模板的问题。
在大多数模板引擎中,简单地插入一个包含 HTML 标记的字符串将导致引擎转义HTML 而不是渲染它。
示例
输入 ><div class='box'> <p class='item'>Hello World</p></div>
输出 ><div class='box'> <p class='item'>Hello World</p></div>
这是正常的,有很多原因,其中之一就是安全性。
解决方案
如果实际上是 EJS 转义 HTML 的问题,您必须指示 EJS 不要转义它。我以前从未使用过 EJS,但是快速谷歌搜索显示EJS escape html
了这个结果如何在 node.js EJS 视图中转义 HTML?
备查
虽然默认情况下 EJS 会转义您的 HTML,但堆栈溢出不会。当您插入<strong>
问题时,堆栈溢出将其呈现为 HTML。
要让 StackOverflow(和大多数其他降价阅读器)像我在上面所做的那样逐字地呈现任何 HTML 标记,请将 HTML 包装在Graves中。
此外,请尝试在您的问题中提供更多信息。信息越多,就越容易推断出问题的可能根源。
推荐阅读
- javascript - 如何等待在 Cypress 中加载请求?
- javascript - 从 catch 块中获取错误行号
- c# - 在 .editorconfig (Visual Studio 2019) 中为缺少 xml 注释配置警告
- leaflet - 更改leafletjs中的默认图层
- firebase - 自动从firestore触发器创建集合索引
- swift - 如何使用viewController编写代码以在swift 5中显示字母及其数字分数
- sql-server - 适当避免 SQL 注入
- android - 我应该如何从服务器获取数据以进行 recyclerview
- python - 如何跳过中间节点?
- javascript - 无法读取welcomeChannel.send 中未定义的属性“发送”