2016-03-08 2 views
2

Я использую jsdoc для создания онлайн-документа для моего проекта javascript.jsdoc hide Унаследованный метод (в созданном doc)

Он отлично работает, за исключением одной проблемы, с которой я столкнулся сейчас.

Скажем, у меня есть базовый класс с множеством функций get/set.

/** 
* cc.BaseClass 
* @class 
* @extends cc.Class 
*/ 
cc.BaseClass = cc.Class.extend(/** @lends cc.BaseClass# */{ 
    /** 
    * @param {number} a 
    */ 
    setA:function(a){}, 
    /** 
    * @return {number} 
    */ 
    getA:function(){}, 
    // ...... 20+ more 
}); 

Тогда у меня есть дочерний класс, который расширяет базовый класс.

/** 
* cc.ChildClass 
* @class 
* @extends cc.BaseClass 
*/ 
cc.ChildClass = cc.BaseClass.extend(/** @lends cc.ChildClass# */{ 
    /** 
    * @param {number} xxx 
    */ 
    myFunction:function(xxx){} 
}); 

Моя проблема в том, генерируемый онлайн DOC для cc.ChildClass содержит «MYFUNCTION: функцию» вместе с 20+ получить/установить функции, унаследованные от cc.BaseClass.

Я знаю, что в этом нет ничего плохого, но я хочу знать, есть ли способ скрыть все функции get/set 20+, унаследованные от cc.BaseClass в документе для cc.ChildClass.

Думаю, если у меня есть cc.ChildClassA cc.ChildClassB cc.ChildClassC ... то я не хочу, чтобы каждый из их документов содержал функции get/set 20+, унаследованные от cc.BaseClass.

Любое предложение будет оценено, спасибо :)

ответ

1

Единственное, что я мог придумать, чтобы удалить @extend. Я добавил ссылку на расширенный класс вручную в описание. Это работает для меня в этом случае, потому что мне не нужны @extends для чего-то еще.

0

Вы не адаптируете свой код/​​классы для удовлетворения этого. Это должно быть ответственностью шаблона. Этот трюк очень хорошо: https://github.com/steveush/foodoc - demo: https://cancerberosgx.github.io/jsdoc-templates-demo/demo/foodoc/Apple.html. Другой, поддерживающий его, - amddcl ibm. В следующем образе смотрите: https://cancerberosgx.github.io/jsdoc-templates-demo/demo/amddcl/Apple.html#

Некоторые другие шаблоны не показывают наследование вообще и не позволяют пользователю делать то, что я тоже не хочу. Я думаю, что foodoc позволяет пользователю и компилятору легко его настроить.

BTW Я пытаюсь собрать известные шаблоны jsdoc demos здесь https://cancerberosgx.github.io/jsdoc-templates-demo/demo/ - для каждого есть инструкции по установке.

Смежные вопросы