簡體   English   中英

如何在JSDoc中記錄深度大於2的符號?

[英]How do I document symbols with a depth greater than 2 in JSDoc?

我有一個包含多個方法的對象,並且是一個類的成員。 我將如何使用JSDoc進行記錄?

這是我的嘗試。 有了此SomeClass#helperFunctions的文檔,但省略了這兩種方法。

 /** * @class SomeClass * @param name */ var SomeClass = function(name) {}; /** * @member SomeClass#helperFunctions */ SomeClass.prototype.helperFunctions = { /** * @method SomeClass#helperFunctions.doSomething * @param {Array} arr */ doSomething: function(arr) {} }; /** * @method SomeClass#helperFunctions.doSomethingElse * @param {Array} arr */ SomeClass.protype.helperFunctions.doSomethingElse = function(arr) {}; 

這是我能想到的最好的。

我將SomeClass#helperFunctions方法SomeClass#helperFunctions為全局變量,然后使用鏈接將它們包含為SomeClass#helperFunctions屬性。

/**
 * @class SomeClass
 * @param {String} name
 */
var SomeClass = function(name) {};

/**
 * @member SomeClass#helperFunctions
 * @property {Function} doSomething [_doSomething]{@link _doSomething}
 * @property {Function} doSomethingElse [_doSomethingElse]{@link _doSomethingElse}
 */
SomeClass.prototype.helperFunctions = {
  doSomething: _doSomething,
  doSomethingElse: _doSomethingElse
};

/**
 * @function _doSomething
 * @param {Array} arr
 */
_doSomething = function(arr) {};

/**
 * @function _doSomethingElse
 * @param {Array} arr
 */
_doSomethingElse = function(arr) {};

在我的實際應用程序中, SomeClass也是一個模塊,因此它寫為:

/**
 * @module path/to/SomeClass
 */

/**
 * @class module:path/to/SomeClass
 */
var SomeClass = module.exports = function() {};

然后,鏈接被寫為{@link module:path/to/SomeClass~_doSomething}因此它將鏈接到模塊頁面上的該位置,而不是在Globals中尋找它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM