使用 JSDoc 记录私有构造函数
Documenting a private constructor with JSDoc
我有一个类,其中可以静态调用单个方法,但会返回一个新的类实例以便链接,例如:
var builder = ns
.setState('a', 'A')
.setState('b', 'B');
如果Builder
定义如下:
/**
* @module Builder
*/
/**
* @class Builder
*/
/**
* @private
*/
function Builder() {
this.state = {
query: {}
};
}
Builder.prototype = {
/**
* @param {string} k - The key
* @param {object} v - The value
* @return {Builder}
*/
setState: function(k, v) {
var that = (this instanceof Builder) ? this : new Builder();
that[k] = v;
return that;
}
// Other properties and methods…
}
Builder
构造函数永远不应该由用户代码显式调用,因此我希望它不会出现在文档中。但是,我尝试过的所有组合都带有 JSDoc 标签(例如 @private
、@constructs
等)似乎无法从构建的文档中抑制它。
从 jsDoc 的 3.5.0 版本开始,你可以在类上使用标记@hideconstructor,告诉jsDoc
不要将构造函数包含在文档中。
/**
* @class Builder
*
* @hideconstructor
*/
function Builder() {
// implementation
}
您应该能够使用 @ignore
指令来实现此目的。从文档中:
@ignore
标记指示代码中的符号不应出现在文档中。此标记优先于所有其他标记。
http://usejsdoc.org/tags-ignore.html
相关文章:
- ES6构造函数返回基类的实例
- 使用Google Visualization动态调用构造函数
- javascript中对象构造函数中的var属性与this.properties
- 理解typescript中的构造函数接口
- 为什么构造函数不是构造函数
- 如果在构造函数中有“返回”,则在 JavaScript 中的新运算符中做了什么
- 拦截对构造函数的调用
- 使用闭包共享构造函数参数
- 文本表示法VS.构造函数,用于在JavaScript中创建对象
- 从js引擎的角度来看闭包和构造函数是如何工作的
- 如何使用此从对象访问构造函数
- Javascript:为什么是构造函数's __proto__属性Empty(){}
- 当一个重要的构造函数参数丢失时应该发生什么
- Chrome Javascript日期构造函数错误
- 如何使用构造函数's的输出,以便将值插入到对象中
- 为什么在调用父构造函数时在[]中发送数据
- 构造函数函数闭包变量
- 日志记录时避免 Promise 构造函数反模式
- 使用 JSDoc 记录私有构造函数
- 如何将文件名传递给wiston记录器构造函数