使用Docusaurus v2标记选项卡中的内容



我试图在选项卡中添加markdown代码,如文档所述。

名称文件名的扩展名为.mdx

这里的内容:

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
<Tabs
defaultValue="javascript"
values={[
{label: 'Javascript', value: 'javascript'},
{label: 'Other', value: 'other'},
]}>
<TabItem value="javascript">
```jsx
Formated code here
```
</TabItem>
<TabItem value="other">This is an orange 🍊</TabItem>
</Tabs>

但我得到了这个错误:

SyntaxError: /home/angelcc/projects/simplex/osm4scala/website/docs/example.mdx: Expected corresponding JSX closing tag for <TabItem> (21:0)
19 | <TabItem value="other">This is an orange 🍊</TabItem>
20 | `}</code></pre>
> 21 | </Tabs>
| ^
22 |     </MDXLayout>
23 |   )
24 | };

不知道我做错了什么。

版本:

"@docusaurus/core": "2.0.0-alpha.72",
"@docusaurus/preset-classic": "2.0.0-alpha.72",
"@mdx-js/react": "^1.6.21",
"clsx": "^1.1.1",
"react": "^17.0.1",
"react-dom": "^17.0.1"
npm 6.12.1
node v12.13.1

有什么建议吗?

您应该删除标记<TabItem></TabItem>之前的空格。我不知道为什么,但这是工作。应该是这样的:

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
<Tabs
defaultValue="javascript"
values={[
{label: 'Javascript', value: 'javascript'},
{label: 'Other', value: 'other'},
]}>
<TabItem value="javascript">
```jsx
Formated code here
```
</TabItem>
<TabItem value="other">This is an orange</TabItem>
</Tabs>

对我来说,删除空格是不够的。所以我做了以下事情:

```mdx-code-block
<Tabs
defaultValue="javascript"
values={[
{label: 'Javascript', value: 'javascript'},
{label: 'Other', value: 'other'},
]}>
<TabItem value="javascript">
```
```jsx
Formated code here
```
```mdx-code-block
</TabItem>
<TabItem value="other">This is an orange</TabItem>
</Tabs>
```

相关内容

  • 没有找到相关文章

最新更新