一、准备项目
1,可以是现有的项目
需要有typescript 插件
2、或者初始化一个项目
首先通过 npm init -y 生成 package.json 文件,并按照我们的需要进行修改:
// E:\www\front-utils\package.json
{
"name": "learning-typedoc",
"version": "1.0.0",
"scripts": {}
}
之后通过 npm install -D typescript 安装 TypeScript,并创建 tsconfig.json 提供语言服务:
// E:\www\front-utils\tsconfig.json
{
"compilerOptions": {
"target": "esnext",
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"experimentalDecorators": true,
"esModuleInterop": true,
"sourceMap": false,
"noEmit": true,
"strict": true,
"resolveJsonModule": true,
"jsx": "preserve"
},
"include": ["./src/utils/*"]
}
二、新建导出方法
按照 tsconfig.json 中的 include 字段创建 ./src/utils/* 目录,在其中编写自己的代码。这里的代码用于演示 TypeDoc 文档生成,大家可以按照自己的想法自行修改。
// E:\www\front-utils\src\utils\index.ts
// 示例代码,大家可以按照自己的想法自行修改
/** 接口 */
export interface MyInterface {
/** 属性1 */
key1: number;
/** 属性2 */
key2: string;
}
/** 类 */
export class MyClass {
/** 类的属性 */
prop1: number
/** 构造函数 */
constructor() {
this.prop1 = this.privateMethod1(1, 2)
}
/**
* 静态方法
* @param param 参数,字符串列表
* @returns 返回 Promise 对象
*/
static staticMethod1(param: string[]) {
return Promise.resolve(param)
}
/**
* 私有方法
* @param param1 第一个参数
* @param param2 第二个参数
* @returns 两数之和
*/
private privateMethod1(param1: number, param2: number) {
return param1 + param2
}
/** 公共方法 */
publicMethod(param1: number, param2: number) {
return this.prop1 + param1 + param2
}
}
/** 类型 */
export type MyType = 1 | 2 | 3 | 4
/**
* 函数
* @param param 参数
*/
export function myFunction(param: MyInterface) {
return param
}
/** 没有导出的成员,不会出现在文档中 */
class MyClassNotExport {}
三、创建文档导出项目
1,创建 doc 目录,
在此目录中放置所有与文档相关的内容,在此目录下也创建 package.json 文件。
E:\www\front-utils> cd doc
E:E:\www\front-utils\doc> npm init -y
// E:\www\front-utils\doc\package.json
{
"name": "doc",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"description": ""
}
目前的目录结构如下:
learning-typedoc
├─ doc
│ └─ package.json
├─ src
│ └─ utils
│ └─ index.ts
├─ package.json
└─ tsconfig.json
四、TypeDoc 基本使用
1,在 doc 目录下安装 TypeDoc:
E:\www\front-utils\doc> npm install -D typedoc
2,TypeDoc 配置
创建TypeDoc 配置文件:typedoc.json
// E:\www\front-utils\doc\typedoc.json
{
"$schema": "https://typedoc.org/schema.json",
"entryPoints": ["../src/utils/*"], // 方法文件入口
"out": "./dist" // 指定的导出文档目录
}
3,生成html文档
通过命令 typedoc --options <filename>,就可以以配置文件中指定的选项运行。
E:\www\front-utils\doc> npx typedoc --options ./typedoc.json
之后就生成文档doc\dist,打开index.html文件即可查看生成的文档
五、生成markdown文档
1,安装typedoc-plugin-markdown插件
E:\www\front-utils\doc> npm i -D typedoc-plugin-markdown
2,配置markdown配置
// E:\www\front-utils\doc\typedoc.json
{
"$schema": "https://typedoc.org/schema.json",
"entryPoints": ["../src/utils/*"],
"plugin": ["typedoc-plugin-markdown"], // 新增
"out": "./dist"
}
3,生成markdown文档
E:\www\front-utils\doc> npx typedoc --options ./typedoc.json
生成的markdown文档在E:\www\front-utils\doc目录