背景
我正在使用ECMA6类编写Nodejs项目,并使用JSDoc来注释我的代码,以便其他开发人员更容易地访问。但是,我的注释并没有被工具很好地接受,并且我的文档十分混乱。
问题
我的问题是我不知道如何使用JSDoc记录ECMA6类,而且我找不到任何像样的信息。
尝试过的方法
我尝试阅读官方示例,但我觉得不够全面和完整。我的类有成员、常量变量等等,而且我通常不知道要使用哪些标签。
我还在网上进行了广泛的搜索,但我找到的大多数信息都是在2015年之前发布的,当时JSDocs还不支持ECMA6脚本。最近的文章很少,也不符合我的需求。
我找到的最接近的东西是这个GitHub问题:
但它已经过时了。
目标
我的主要目标是学习如何使用JSDoc记录NodeJS中的ECMA6类。
我有一个明确的示例,我希望它能正常工作:
/**
* @fileOverview What is this file for?
* @author Who am I?
* @version 2.0.0
*/
"use strict";
//random requirements.
//I believe you don't have to document these.
let cheerio = require('cheerio');
//constants to be documented.
//I usually use the @const, @readonly and @default tags for them
const CONST_1 = "1";
const CONST_2 = 2;
//An example class
class MyClass {
//the class constructor
constructor(config) {
//class members. Should be private.
this.member1 = config;
this.member2 = "bananas";
}
//A normal method, public
methodOne() {
console.log( methodThree("I like bananas"));
}
//Another method. Receives a Fruit object parameter, public
methodTwo(fruit) {
return "he likes " + fruit.name;
}
//private method
methodThree(str) {
return "I think " + str;
}
}
module.exports = MyClass;
问题
针对上面的迷你类示例,您将如何使用JSDoc进行文档化?
请提供一个示例。