Цель состоит в том, чтобы получить JSDoc-документацию из TypeScript кода. Качество документации из решения для документации TypeDoc (TypeScript) неприемлемо, поскольку документация ориентирована на пользователей JS и не должна быть заполнена деталями, специфичными для реализации TypeScript (интерфейсы и т.д.).
В настоящее время передача в ES6 и генерация документации из JS файлов делает трюк по большей части. За исключением свойств, которые не имеют назначенных значений. Как оказалось,
class A {
/**
* @private
* @var _a
*/
private _a;
/**
* @public
* @var a
*/
public a = true;
}
передается на
class A {
constructor() {
/**
* @public
* @var a
*/
this.a = true;
}
}
Хотя я ожидал бы что-то вроде
class A {
constructor() {
/**
* @private
* @var _a
*/
/**
* @public
* @var a
*/
this.a = true;
}
}
или
class A {
/**
* @private
* @var _a
*/
constructor() {
/**
* @public
* @var a
*/
this.a = true;
}
}
Как можно предоставить комментарии (в частности, JSDoc) для неназначенных членов класса в TypeScript? Есть ли уловка, которая могла бы заставить комментарии оставаться на месте (даже если private _a;
отсутствует в переводе кода)?