JSDoc 有一个 @readonly
doclet tag :
The @readonly tag indicates that a symbol is intended to be read-only.
例如:
/**
* The name of the represented principal
* @member {string}
* @readonly
*/
this.name = primaryName;
但是,我真正想要传达和记录的是,公共(public)消费者应该将属性视为只读 - 但成员不是 em>常数。
内部代码可以并且确实会修改此类成员:只读 doclet 标记供 API 使用者使用。 (如果 API 使用不当,他们会感到羞耻!-但我不关心。)
/**
* Update the security token information.
* (This is a made-up example!)
*/
this.updateToken = function (token) { this.name = token.name; }
在JSDoc(tags)中有没有什么好的表达方式?特别是,
什么是表达“预期内部代码修改此只读成员”的好方法?
除了 doclet 标签之外,当然在文档中没有明确地写出来。
我最初希望 JSDoc 能够简单地接受“@readonly private”或类似的东西,但事实并非如此。使用自定义标签的问题在于它是在本地引入的,没有直接的外部含义或在标准模板。
最佳答案
不幸的是,没有什么比多个标签更好的了。
比如“@readonly,private”不存在。
因此您可以使用@readonly 或@private 中的任何一个,但您正在寻找的是目前不可能/不可用的东西(据我所知)。
关于javascript - JSDoc中如何注解 "@readonly-but-modified-internally"成员/属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26814434/