我正在创建一个博客,使用"简化Web开发"教程:https://www.youtube.com/watch?v=1NrHkjlWVhM
我已经从github复制了代码https://github.com/WebDevSimplified/Markdown-Blog,安装了节点模块,并将其联机链接到我的mongodb数据库。
节点模块包括:;express,mongose,ejs,--save dev nodemon,slugify,method override,dompurify,jsdom。
数据库一直在工作,我可以保存文章,直到我添加了关于清除HTML和将markdown转换为HTML的最后一部分,这时出现了"TypeError:marked is not a function",保存按钮停止工作。
似乎一个曾经被理解的函数现在不被理解了,因为最近的节点模块依赖关系,要么是dompurify库,要么是jsdom。我在这里真的是力不从心!请帮忙!
来自标记文档:https://marked.js.org/#demo
Node JS
import { marked } from 'marked';
// or const { marked } = require('marked');
const html = marked.parse('# Marked in Node.jsnnRendered by **marked**.');
您的代码:
if (this.markdown) {
this.sanitizedHtml = dompurify.sanitize(marked(this.markdown))
}
试试这个:
if (this.markdown) {
this.sanitizedHtml = dompurify.sanitize(marked.parse(this.markdown))
}
它对我来说很好
在我的例子中:
const { marked } = require('marked');
而不是
const marked = require('marked')
this.sanitizedHTML = dompurify.sanitize(marked.parse(this.markdown))
每个节点的示例文档位于https://marked.js.org/#demo