fix(nav): section.nav_link -> README.md

This commit is contained in:
Yao Siqian
2025-09-21 05:26:24 +00:00
parent 3ae34ac79b
commit e570f3594a

View File

@@ -42,7 +42,7 @@ export function generateNavAndSidebar(rootDir: string) {
for (const dir of sections) {
const abs = path.join(rootDir, dir)
const files = fs
const files = fs
.readdirSync(abs)
.filter((f) => isMarkdown(path.join(abs, f)))
.sort(sortByPinyinOrName)
@@ -50,9 +50,12 @@ export function generateNavAndSidebar(rootDir: string) {
// Build sidebar for this section
const items: SidebarItem[] = files.map((f) => ({
text: titleFromName(f),
link: `/${encodeURI(dir)}/${encodeURI(f)}`,
link: `/${encodeURI(dir)}/${encodeURI(f)}`,
}))
// Find README.md、readme.md、index.md
const readme = ['README.md', 'readme.md', 'index.md'].find((n) => fs.existsSync(path.join(abs, n)))
if (items.length > 0) {
sidebar[`/${dir}/`] = [
{
@@ -60,11 +63,12 @@ export function generateNavAndSidebar(rootDir: string) {
items,
},
]
// First doc becomes nav link for section
nav.push({ text: dir, link: items[0].link! })
if (readme) {
nav.push({ text: dir, link: `/${encodeURI(dir)}/${encodeURI(readme)}` })
} else {
nav.push({ text: dir, link: items[0].link! })
}
} else {
// Empty section: still show in nav to directory index if exists
nav.push({ text: dir, link: `/${encodeURI(dir)}/` })
}
}