Javascript 为什么降价渲染<;h1>;id为';s

Javascript 为什么降价渲染<;h1>;id为';s,javascript,html,markdown,gulp,metalsmith,Javascript,Html,Markdown,Gulp,Metalsmith,我正在使用Gulp+Gulpsmith+Metalsmith创建我的网站 metalsmith_markdown正在按如下方式呈现我的HTML: #这是H1到这是H1。为什么要呈现“id”标记 为什么会这样 下面是在我的Gulpfile.js中处理降价渲染的部分 .use(markdown({ gfm: true, tables: true, breaks: false, pedantic: false, sanitize: true, smart

我正在使用Gulp+Gulpsmith+Metalsmith创建我的网站

metalsmith_markdown正在按如下方式呈现我的HTML:

#这是H1
这是H1
。为什么要呈现“id”标记

为什么会这样

下面是在我的Gulpfile.js中处理降价渲染的部分

.use(markdown({
    gfm: true,
    tables: true,
    breaks: false,
    pedantic: false,
    sanitize: true,
    smartLists: true,
    smartypants: true
}))

这就是的行为,它使用作为标记解析器,因为

您可以覆盖其自述文件和中所述的标记的某些功能,但由于所有功能都由metalsmith插件处理,因此您无法真正覆盖这些功能


我建议在标记中创建一个PR,以添加一个自定义选项来完全停用靠近

的行为,这样您就可以引用元素了,有问题吗?我绝对不希望该ID出现。我已经处理了SCS中的所有排版元素,所以我不必专门针对它。还可以想象如果markdown将每个标记的内容呈现为它们的ID。。。我的HTML看起来很糟糕/哈哈哈,我很确定这不是每个标签的内容,而是主要标题(这也意味着你可以用
[link](#这是-an-h1)
之类的标记链接到它们)。哥们这已经导致了严重的强迫症引起的恐慌发作。。。那么这是正常的行为?没有办法“标记”它吗?这当然是许多降价处理器的一个共同特点。(例如,pandoc对所有标题都做了同样的事情。)我通过在metalsmith_markdown/node_modules/marked/lib文件夹中的
makred.js
中调整几行,强制了一个真正的“穴居人”解决方案,通过注释掉一些行并稍微调整渲染标记的格式->它现在的行为符合我的要求,但我真的认为应该有一个选项来删除无关的标记。是的,你也可以这样做,但如果你想更新此依赖项或重新安装项目,这可能会很复杂,你必须重新改变你完全正确。。。我真的觉得这样做很不自在。我可能会试试看Gulp的一些降价渲染器是否会起作用。