5

我目前正在使用 JSDoc 记录我的一个 API。虽然这很好用,但真正让我烦恼的一件事是重复文档的出现。一个常见的例子是属性及其 getter 的文档:

function AClass() {
    /**
     * The current state of the object. Determines wether this object has been initialized yet.
     * @type {String}
     * @private
     */
    this._state = "initalized";
}

/**
 * Returns the current state of the object, which determines if the object has been initalized yet.
 * @return {String} The current state of the object
 */
AnObject.prototype.getState = function() {
    return this._state;
}

我想每个人都在这里看到了这个问题。该属性实际上记录了 3 次(私有属性本身、getter 方法描述和方法的返回值)。简单地将方法的描述更改为类似的东西Returns the state并不是一个真正的选择,因为我通常在文档输出中隐藏私有属性。

我对此类情况是否有最佳实践以及其他人如何处理这种情况感兴趣。作为一个痴迷于 DRY 的人,似乎应该有更好的选择来处理这些情况。

4

1 回答 1

2

我也注意到了这一点并同意它有点烦人,同时我认为没有完美的解决方案。

你可能会做的事情是

/**
 * Getter for {@link AClass._state}
 * @return {String} Returns {@link AClass._state}
 */
于 2015-04-01T19:30:34.180 回答