如何注释" @ readonly-but-modified-internal" JSDoc中的成员/属性?

时间:2014-11-08 06:18:49

标签: javascript documentation readonly jsdoc jsdoc3

JSDoc有@readonly doclet tag

  

@readonly标记表示符号是只读的。

例如:

/**
* The name of the represented principal
* @member {string}
* @readonly
*/
this.name = primaryName;

然而,我真正想要传达和记录的内容是公共消费者将该属性视为只读 - 但该成员常数。

内部代码可以并且确实修改了这些成员:只读doclet标记用于API使用者。 (如果API使用不正确,请对它们感到羞耻! - 但不是我的顾虑。)

/**
* Update the security token information.
* (This is a made-up example!)
*/
this.updateToken = function (token) { this.name = token.name; }

有没有一种很好的方法在JSDoc(标签)中表达这个概念?特别是,

什么是表达的好方法"预计内部代码会修改此只读成员"?


除了doclet标签之外,在文档当然没有明确写出。

我原本希望JSDoc能够接受" @readonly private"或者类似,但事实并非如此。使用自定义标签的问题是,这种问题是在本地引入的,在标准模板中没有迫在眉睫的外部意义或应用。

2 个答案:

答案 0 :(得分:4)

不幸的是,没有像多个标签那样的东西。

喜欢“@ readonly,private”不存在。

因此,您可以使用 @readonly @private 中的任何一个,但您正在寻找的是目前无法/可用的内容(据我所知)。

答案 1 :(得分:3)

根据我的观点, @readonly 在这种情况下最好。无论是内部修改,它都只能为外部用户读取。