首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nuxt内容v2标记标题呈现为URL

Nuxt内容v2标记标题呈现为URL
EN

Stack Overflow用户
提问于 2022-09-21 11:51:39
回答 1查看 121关注 0票数 2

我正在用Nuxt 3& Nuxt Content2.1编写Markdown内容,而且我面临一个问题,因为如果不将它们呈现为链接,就无法编写h2-h6标题。

h1在一个八进制符号中工作得很好,但是一旦我添加了一个或多个这样的符号来呈现较小的标题,应用程序就会自动将它们转换为URL。

内容以默认的[...slug].vue<ContentDoc />配置呈现,如文档中所示。

用Markdown写的是:

代码语言:javascript
复制
# header 1

## header 2

..。以及在HTML中实际呈现的内容:

代码语言:javascript
复制
<h1 id="header-1">
  <!--[-->
  header 1
  <!--]-->
</h1>

<h2 id="header-2">
  <a href="#header-2">
    <!--[-->
    header 2
    <!--]-->
  </a>
</h2>

有什么办法解决这个问题吗?

编辑:

Nuxt还将简单的<h2>标记转换为链接,但现在使用的是未定义的href

代码语言:javascript
复制
<h2>header 2</h2>

代码语言:javascript
复制
<h2>
  <a href="#undefined">
    header 2
  </a>
</h2>
EN

回答 1

Stack Overflow用户

发布于 2022-10-16 08:29:13

签出Nuxt内容文档这里

在Nuxt内容中,散文表示从Markdown语法输出的HTML标记,例如标题级别、链接.Vue组件对应于每个标记,允许您在需要时重写它们。

默认情况下,h2成为标记中的标记,它在文件中定义。这些文件列在成分/散文部分。

您可以通过以下方式覆盖它:

  1. 创建components/content目录
  2. 在其中创建ProseH2.vue
  3. 从原始文件中复制代码,在模板部分中,删除标记和v-,或者您想对其进行的任何修改:
代码语言:javascript
复制
<template>
  <h2 :id="id">
    <slot />
  </h2>
</template>

重启服务器,它应该改变。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73800242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档