JSDoc有@readonly
doclet tag:如何在JSDoc中註釋「@ readonly-but-modified-internal」成員/屬性?
的@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」或類似的東西,但事實並非如此。使用自定義標籤的問題在於,它是在本地引入的,沒有即時的外部含義或應用程序標準模板。