我正在使用 docfx 为我的 .Net 项目生成 API 文档。我需要向不同类型的客户展示不同风格的内容。生成元数据时,也会生成 TOC.YML,这很好。但是,在生成 html 文件时,此 TOC 用于在每个 HTML 页面的侧面创建导航栏。问题是对于某些观众,完整的侧边栏不应该可用,而应该只显示自定义 toc.yml 提供的导航。我可以在自定义文件夹中创建一个新的自定义 TOC 并导航到页面,但是当加载 html 页面时(当然)会显示完整生成的 TOC.yml 的导航栏。
阅读文档。创建了自己的 TOC 文件(正在工作),但我没有找到使用自定义 TOC.yml 生成的 iso 的选项。试图排除docfx.json中的toc.yml。
{
"metadata": [
{
"src": [
{
"files": [
"LIB/myassembly.dll"
],
"include": [""],
"exclude": [
"**/toc.yml"
],
"cwd": "../output/Debug/"
},
{
"files": [
"**.cs"
],
"exclude": [
],
"cwd": "../../../TestScripting/Scripts"
}
],
"dest": "api",
"force": true
}
],
"build": {
"content": [{
"files": [
"api/**.yml"
]
},
{
"files": [
"scripting/index.md",
"scripting/toc.yml",
"articles/**.md",
"articles/**/toc.yml",
"toc.yml",
"*.md"
],
"exclude": [
"obj/**",
"_site/**"
]
}
],
"resource": [{
"files": [
"images/**"
],
"exclude": [
"obj/**",
"_site/**"
]
}],
"overwrite": [{
"files": [
"apidoc/**.md"
],
"exclude": [
"obj/**",
"_site/**"
]
}],
"dest": "../Doc",
"globalMetadataFiles": [],
"fileMetadataFiles": [],
"template": [
"default","darkfx/darkfx"
],
"postProcessors": [],
"noLangKeyword": false,
"keepFileLink": false,
"cleanupCacheHistory": false
}
}
预期的结果是:每个生成的html文件显示的导航栏都应该基于自定义的toc.yml。