转义字符串化 JSON 中的单引号,作为 EJS 模板传递以供查看
Escaping single quotes in stringified JSON thats passed as EJS template to view
我有一个 NodeJS 应用程序,它使用 EJS 模板将变量从服务器注入到视图中。我在使用特定值时遇到问题,该值是一个包含其值可能包含撇号的对象的数组。在传递给 JSON.parse 时,我必须将 EJS 模板字符串包装在单引号中,结果撇号被混淆为传递给 JSON.parse 的字符串的末尾。我试过逃脱撇号,但没有运气。
<script>
window.foo = JSON.parse('<%- JSON.stringify([{"bar": "baz's lorem ipsum"}]) %>');
</script>
解释为:
<script>
// the string is cut off between the first quote & baz's apostrophe
window.foo = JSON.parse('[{"bar": "baz's lorem ipsum"}]');
</script>
JSON.stringify
返回对象的有效 JSON 文本表示形式。您不需要解析它:
<script>
window.foo = <%- JSON.stringify([{"bar": "baz's lorem ipsum"}]) %>;
</script>
相关文章:
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 如何将JSON数据导入我的ejs模板
- 在POST中将html表作为csv提交
- 主干模板:index.jst.eco到index.jst.ejs
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- 循环结束/推送到数组之前在页面上呈现EJS
- 如何将PDF作为二进制文件传递到window.open()
- 函数未将值作为参数传递
- 使用带括号的图像URL作为jQuery的背景
- 绑定时将Parsley minlength消息作为选项传递时,未对其进行自定义
- 在JavaScript中使用对象作为属性键
- 在ejs-partial中对JSON对象进行迭代
- 将日期时间作为 JSON 发送将无法在我的视图中正确显示
- 我可以在Javascript/jQuery中使用一个变量作为键吗
- 浮动图像左作为背景-css
- 我是否可以检测到javascript正在被卸载(作为调试模式)
- D3嵌套组作为x轴
- 将Json作为变量加载到jsTree中
- 转义字符串化 JSON 中的单引号,作为 EJS 模板传递以供查看
- 将呈现的ejs视图作为服务内的html字符串返回