Inline TOC
Each Markdown document displays a tab of content on the top-right corner.
But it is also possible to display an inline table of contents directly inside a markdown document, thanks to MDX.
Full table of contentsβ
The toc
variable is available in any MDX document and contains all the headings of an MDX document.
By default, only h2
and h3
headings are displayed in the TOC. You can change which heading levels are visible by setting minHeadingLevel
or maxHeadingLevel
.
import TOCInline from '@theme/TOCInline';
<TOCInline toc={toc} />;
Custom table of contentsβ
The toc
prop is just a list of heading items:
type TOCItem = {
value: string;
id: string;
level: number;
};
Note that the toc
global is a flat array, so you can easily cut out unwanted nodes or insert extra nodes, and create a new TOC tree.
import TOCInline from '@theme/TOCInline';
<TOCInline
// Only show h2 and h4 headings
toc={toc.filter((node) => node.level === 2 || node.level === 4)}
/>;
caution
Below is just some dummy content to have more table of contents items available on the current page.
Example Section 1β
Lorem ipsum
Example Subsection 1 aβ
Lorem ipsum
Example subsubsection 1 a Iβ
Example subsubsection 1 a IIβ
Example subsubsection 1 a IIIβ
Example Subsection 1 bβ
Lorem ipsum
Example subsubsection 1 b Iβ
Example subsubsection 1 b IIβ
Example subsubsection 1 b IIIβ
Example Subsection 1 cβ
Lorem ipsum
Example subsubsection 1 c Iβ
Example subsubsection 1 c IIβ
Example subsubsection 1 c IIIβ
Example Section 2β
Lorem ipsum
Example Subsection 2 aβ
Lorem ipsum
Example subsubsection 2 a Iβ
Example subsubsection 2 a IIβ
Example subsubsection 2 a IIIβ
Example Subsection 2 bβ
Lorem ipsum
Example subsubsection 2 b Iβ
Example subsubsection 2 b IIβ
Example subsubsection 2 b IIIβ
Example Subsection 2 cβ
Lorem ipsum
Example subsubsection 2 c Iβ
Example subsubsection 2 c IIβ
Example subsubsection 2 c IIIβ
Example Section 3β
Lorem ipsum
Example Subsection 3 aβ
Lorem ipsum
Example subsubsection 3 a Iβ
Example subsubsection 3 a IIβ
Example subsubsection 3 a IIIβ
Example Subsection 3 bβ
Lorem ipsum
Example subsubsection 3 b Iβ
Example subsubsection 3 b IIβ
Example subsubsection 3 b IIIβ
Example Subsection 3 cβ
Lorem ipsum