流星{{#markdown}}
Meteor {{#markdown}}
我正在制作一个支持降价的论坛。
我一直在使用 meteor 的 markdown 解析器 {{#markdown}}
并且发现了一些我似乎无法弄清楚的令人不安的东西。
我正在使用 {{#markdown}}{{content}}{{/markdown}}
呈现插入数据库的内容。
令人不安的事情,例如,如果有人写了html而没有将其插入内容中的代码块...
例子
<div class = "col-md-12">
Content Here
</div>
这将呈现为一列。他们还可以通过为它编写 HTML 来制作按钮等。
如何禁用此行为,以便在写入 HTML 时它不会呈现为 HTML 而只是简单地显示为文本?
您可以编写全局助手,它将去除所有 html 标签:
function stripHTML(string){
s = string.replace(/(<([^>]+)>)/ig, '');
return s;
}
Template.registerHelper('stripHTML', stripHTML)
用法:
{{#markdown}}{{stripHTML content}}{{/markdown}}
在控制台中测试:
stripHTML("<div>Inside dive</div> Text outside")
我正在制作一个支持降价的论坛。
我一直在使用 meteor 的 markdown 解析器 {{#markdown}}
并且发现了一些我似乎无法弄清楚的令人不安的东西。
我正在使用 {{#markdown}}{{content}}{{/markdown}}
呈现插入数据库的内容。
令人不安的事情,例如,如果有人写了html而没有将其插入内容中的代码块...
例子
<div class = "col-md-12">
Content Here
</div>
这将呈现为一列。他们还可以通过为它编写 HTML 来制作按钮等。
如何禁用此行为,以便在写入 HTML 时它不会呈现为 HTML 而只是简单地显示为文本?
您可以编写全局助手,它将去除所有 html 标签:
function stripHTML(string){
s = string.replace(/(<([^>]+)>)/ig, '');
return s;
}
Template.registerHelper('stripHTML', stripHTML)
用法:
{{#markdown}}{{stripHTML content}}{{/markdown}}
在控制台中测试:
stripHTML("<div>Inside dive</div> Text outside")