使用JSDoc自动生成代码文档

简介: 译者按: 代码要有规范的注释,遵从jsDoc规则来注释可以生成有用的文档。原文: Generate docs and host it with JSDoc and GitHub Pages译者: Fundebug为了保证可读性,本文采用意译而非直译,并且对源代码进行了大量修改。

译者按: 代码要有规范的注释,遵从jsDoc规则来注释可以生成有用的文档。

为了保证可读性,本文采用意译而非直译,并且对源代码进行了大量修改。另外,本文版权归原作者所有,翻译仅用于学习。

今天,我来分享如何快速生成JavaScript代码的文档,并且使用Github pages发布。

我首先创建一个示例类JokeMachine,它存储一个笑话列表,调用sayRandomJoke会随机讲一个笑话。

class HelloWorld {

    constructor(){
        this.firstName = '';
        this.lastName = '';
    }

    setName(firstName, lastName){
        this.firstName = firstName;
        this.lastName = lastName;
    }

    getFullName(){
        return this.firstName + ' ' + this.lastName;
    }

    sayHello(){
        console.log('Hello, ' + this.getFullName());
    }
}

添加代码文档

参照jsdoc指导规则,直接在代码中编写文档。

/**
 * HelloWorld类存储一位客人的名字,并打招呼。
 */
class HelloWorld {

    constructor(){
        this.firstName = '';
        this.lastName = '';
    }

    /**
     * 设置客人的姓名
     *
     * @param {String} lastName 姓
     * @param {String} firstName 名
     */
    setName(lastName, firstName){
        this.lastName = lastName;
        this.firstName = firstName;
    }

    /**
     * 获取客人的全名
     *
     * @return {String} 客人的姓名
     */
    getFullName(){
        return this.lastName + ' ' + this.firstName;
    }

    /**
     * 向客人打招呼
     *
     */
    sayHello(){
        console.log('Hello, ' + this.getFullName());
    }
}

使用jsDoc生成文档

现在我们可以为JokeMachine类生成文档。首先,在全局安装jsDoc或则局部安装。我个人喜欢全局安装。

npm install -g jsdoc

如果想知道更多信息,可以参考jsDoc的Github页面

最后,使用如下命令生成文档:

jsdoc Joke.js

你会发现一个名为out的新文件夹。打开文件夹中的index.html,可以看到生成好的文档。

img_19d2276b3bb1692986c14ed8259d26ae.png

点击右侧导航栏的JokeMachine标签,然后可以查看JokeMachine所有的方法说明。

img_9416ce7fba7889d9846cd439f07f505f.png

是不是很酷?

你也许注意到了,没有一个根页面,因为jsDoc根据README.md文件来生成。
因此,我们添加一个。

touch README.md

并简单介绍一下

# 使用jdDoc来生成文档
## Hello World示例
这里是根页面

我们再次生成文档,注意第二个参数是README.md

jsdoc Joke.js README.md

新生成的文档根页面如下:

img_4575c2d346d32db4500efa1464e0f513.png

使用Github pages托管

最简单的方法就是创建一个Github repository, 然后使用免费的Github pages服务(译者注:国内Coding也有相应的服务)。如果你还不知道如何创建repository,可以参考帮助文档

你需要将文件夹重命名为docs,然后去Github网站,到项目的设置(Settings > Github Pages),选择master branch/docs folder, 然后保存。

img_3132fd45795ede444c923472e5279fde.png

然后,会生成一个指向该文档的链接:

img_bc97ea0a41dc0f50a5195013ba024760.png

点击链接,就可以看到文档啦。

img_bb31b8cb2adb7b52a50d9e91733778b7.jpe

版权声明:
转载时请注明作者Fundebug以及本文地址:
https://blog.fundebug.com/2017/10/18/generate-docs-with-jsdoc/

目录
相关文章
|
Java 数据库连接 Spring
Spring Boot命令行启动添加参数
Spring Boot命令行启动添加参数
429 0
|
6月前
一文带你封装Vue3 Echarts
一文带你封装Vue3 Echarts
437 7
一文带你封装Vue3 Echarts
|
10月前
|
JavaScript 测试技术 API
Vue 3 与 TypeScript:最佳实践详解
Vue 3 与 TypeScript:最佳实践详解
|
10月前
|
JavaScript 前端开发
什么是模板字符串?
什么是模板字符串?
233 0
|
监控 Unix 程序员
Python 实现 Unix 'tail' 命令的完整解决方案
这是一个关于Python实现的 tail 命令库的摘要,最初由一个斯里兰卡程序员编写。代码中存在一个问题,在获取文件大小时可能抛出文件不存在的异常,已修复此 bug,添加了错误处理。修复后的代码包含一个名为 `wait_file_get_size` 的函数,用于安全地获取文件大小。此外,提供了类 `Tail`,用于监视文件变化,并可注册回调函数处理新行。
|
JavaScript 前端开发 测试技术
Map 和 Object 在处理大量数据时性能差异
Map 和 Object 在处理大量数据时性能差异
Error: EPERM: operation not permitted, mkdir
Error: EPERM: operation not permitted, mkdir
|
Web App开发 iOS开发
无法安装此 app, 因为无法验证其完整性 ,解决方案
无法安装此 app, 因为无法验证其完整性 ,解决方案
vs code修改左侧栏字体大小
vs code修改左侧栏字体大小
1005 0
vs code修改左侧栏字体大小
|
存储 分布式计算 Kubernetes
多云成为新常态,华为打造数据存储新战略
多云成为新常态,华为打造数据存储新战略
257 0

热门文章

最新文章