在 TypeScript 项目中,我们常常需要生成 API 文档以供其他开发者查看,Typedoc 就是一款用来生成这种文档的工具。虽然 Typedoc 集成了许多主题,但是有些项目需要更好看、更具自定义性的文档,这时就可以使用 @gerrit0/typedoc-default-themes
这个 npm 包,以下是该包的详细教程。
安装
首先,我们需要在项目根目录下通过 npm 安装该包:
npm install @gerrit0/typedoc-default-themes
配置
在项目根目录下创建 typedoc.json
文件,使用该主题需要进行如下配置:
-- -------------------- ---- ------- - -------------- --- ------ -------- ----------------- ----- ------------------- ----- ----------- ------------- -------- ---------------------------------- -------- ---------- ----- -
其中各参数的含义如下:
entryPoints
:入口文件路径,可以是单个文件、目录或通配符,例如"./src/index.ts"
或"./src/*"
out
:生成文档输出的目录excludePrivate
和excludeProtected
:是否排除私有成员和受保护成员includes
:需要生成文档的文件路径,可以是单个文件、目录或通配符theme
:主题名称,这里需填写@gerrit0/typedoc-default-themes
title
:文档页面的标题
生成文档
在完成上述配置后,在命令行中运行以下命令即可生成文档:
npx typedoc
生成的文档将位于刚刚配置的 out
目录下,其中包含多个 .html
文件和 assets
文件夹。
配置项
该主题提供了以下自定义配置项,可在 typedoc.json
文件中进行配置:
-- -------------------- ---- ------- --------------- - ------- - - ------- ----------- -- - -------- -------- ------- --------- -- - ------- --------------------------- -------- --------- ----- - -- --------- - ------- - ------ ----------------- -- ------- - ------- --- -- --------- ----- -- ------------- ----------------------------------- ------------- ---- -
menu
:自定义菜单项,支持添加自定义链接、分割线等topBar
:顶部导航栏的自定义项,支持更换 logo、修改主页链接、隐藏搜索框等githubRepo
:Github 仓库的链接githubEdit
:是否启用 Github 编辑页面功能
示例代码
下面是一个简单的示例,假设我们有以下目录结构:
. ├── dist │ ├── index.js │ └── utils.js ├── src │ ├── index.ts │ └── utils.ts └── typedoc.json
假设我们要生成 src
目录下的 TypeScript 文件的 API 文档,可以在 typedoc.json
文件中进行如下配置:
-- -------------------- ---- ------- - -------------- ------------------- ------ -------- ----------------- ----- ------------------- ----- ----------- ------------- -------- ---------------------------------- -------- ---------- ----- -
然后在命令行中运行以下命令即可生成文档:
npx typedoc
生成的文档将位于 docs/
目录下,包括多个 .html
文件和 assets
文件夹,可以在浏览器中打开 docs/index.html
查看文档页面效果。
结语
@gerrit0/typedoc-default-themes
这个 npm 包提供了一种简单、易用的办法来生成高质量的 TypeScript API 文档,通过上述教程学习使用该包不仅可以更加灵活地生成文档,并且能够节省我们大量的时间和精力。希望这篇文章能够帮助读者更好地掌握该包的使用方法。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f22c329403f2923b035c6dc