Мне интересно, как документировать свойства 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
не работает, есть ли альтернативный тег, который поможет?