在我的代码中,我有一个旨在削弱 HTML 的预处理器,因此用户输入的数据不会造成潜在的混乱。我目前有:
var converter = new showdown.Converter();
var preprocess = function(raw)
{
var workbench = raw;
workbench = workbench.replace(/&/g, '&');
workbench = workbench.replace(/"/g, '"');
workbench = workbench.replace(/'/g, ''');
workbench = workbench.replace(/\\\\/g, '\\\\\\\\');
workbench = workbench.replace(/</g, '<');
workbench = workbench.replace(/>/g, '>');
return converter.makeHTML(workbench);
}
这会产生一个错误:
[FQDN]/:239 未捕获类型错误:converter.makeHTML 不是函数
如果我做一个console.log()
on 转换器,它会给出我在之前使用时所期望的那种答案。更具体地说,它有几个成员,包括 Chrome 报告为函数的 makeHTML 成员。
converter
在我引用的代码中,标识符仅使用了两次。
我可以/应该做些什么来支持用户输入文本的 Markdown,无论是 Showdown 还是其他?
谢谢,