在 Node.js 下要在 Markdown/MDX 文件的標題加上可以連到自身的連結的套件是 rehype-autolink-headings
。我在 Astro 想要加上這個 Rehype plugin,該改的程式都改好了卻沒有變化。
後來 Google 到 Astro Repository 上的 issue,才知道還要加上 rehype-slug
套件。
我查閱 Astro 文件時有翻到 Astro 會自動幫標題加上 ID,所以我以為這樣就不需要加入做一樣事情的 rehype-slug
套件。這個 issue 的作者後來自己找到了答案:Astro 在所有 plugin 都運作完後才會在標題加上 ID,所以需要 rehype-slug
套件加在 rehype-autolink-headings
前面它才會正常運作。
想要知道這個套件的效果的話,你可以把滑鼠游標移到下面標題上面看看。