1

this.クラスのコンストラクター関数のプロパティを文書化する方法を知りたいです。たとえば、@nameタグを使用してクラスに名前を付けようとしましたが、次のドキュメントが生成されませんでしたthis.foo:

/**
 * @name ClassName
 * @constructor
 */
function noname (){
    /** @type {String} */
    this.foo = "bar";
}

私はこのようにそれを解決することができます:

/**
 * @name ClassName
 * @constructor
 */
function noname (){
    /** 
    * @type {String} 
    * @name ClassName#foo
    */
    this.foo = "bar";
}

またはこの方法で:

/**
 * @name ClassName
 * @constructor
 */
function noname (){
    /** @lends ClassName# */
    var that = this;

    /** @type {String} */
    that.foo = "bar";
}

ただし、既存のコードを大量に変更するか、jsdoc コメントにすべてのプロパティ名を追加する必要があるため、どちらも満足できるものではありません。

@nameトリックをしないので、代わりのタグはありますか?

4

2 に答える 2