目录元数据 metadata.docdoc.json
放在任意目录内(对象形态,可缺省整个文件),声明该目录的侧栏顺序、目录标题与子树侧栏渲染器。三个键都可省略:省略 order 保持字母序,省略 renderer 继承上级,省略 title 回落标题来源链的下一项(站内搜索 ?文件与目录)。
{ "order": ["introduction", "getting-started", "faq.md"] }
字段
| 字段 | 类型 | 说明 |
|---|---|---|
order |
string[] | 子条目排序表:目录不写扩展名,页面写全名(含 .md);index.md 不列入(目录页排在该目录条目的首位,不参与排序) |
title |
object | 目录标题 i18n:{语言码: 标题};目录没有 index.md 与同名兄弟 .md 时生效,避免为取标题而写占位 index.md。标题文本内可声明 <Icon name="..." /> 图标,构建时提取为侧栏图标、从文本剥离,与 index.md 标题的行为一致 |
renderer |
string | 该目录子树的侧栏渲染器:tree / submenu / group |
带图标的标题声明:
{ "title": { "cn": "<Icon name=\"cube\" /> 配置参考", "en": "Configuration" }, "renderer": "group" }
渲染器继承与混合
形态是目录节点的属性:节点生效形态 = 自身 metadata.docdoc.json 声明 ?? 继承外层 ?? 文档缺省(doc.docdoc.json 的 renderer,最终回落 tree)。侧栏自文档根起逐节点按各自生效形态递归渲染,声明的影响严格收敛在自身子树内:
group节点铺开整个子树;其内的 tree 子目录呈现为可展开块、submenu 子目录为点击进入条目,group 子目录继续平铺tree节点可展开折叠;其内的 group 子目录烘焙为平铺分组块、submenu 子目录为点击进入条目submenu节点逐级进入:页面在外部时呈现为点击进入条目,页面在其内部时面包屑 + 当前目录按当前目录的生效形态渲染
同一文档内可以让 tree / submenu / group 按目录混合出现:
{ "order": ["introduction", "getting-started", "faq.md"], "renderer": "tree" }
