0

在我的代码中,我有一个旨在削弱 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, '&lt;');
            workbench = workbench.replace(/>/g, '&gt;');
            return converter.makeHTML(workbench);
            }

这会产生一个错误:

[FQDN]/:239 未捕获类型错误:converter.makeHTML 不是函数

如果我做一个console.log()on 转换器,它会给出我在之前使用时所期望的那种答案。更具体地说,它有几个成员,包括 Chrome 报告为函数的 makeHTML 成员。

converter在我引用的代码中,标识符仅使用了两次。

我可以/应该做些什么来支持用户输入文本的 Markdown,无论是 Showdown 还是其他?

谢谢,

4

1 回答 1

0

代替

converter.makeHTML(workbench);

你应该打电话

converter.makeHtml(workbench);
于 2016-11-09T22:05:40.623 回答