Есть ли способ определить типы свойств стандартного объекта и подобрать их Typedoc? - PullRequest
1 голос
/ 03 апреля 2019

Я создаю новый класс в TypeScript с объектом, который я использую для отслеживания состояния определенных вещей в скрипте. Объект получает два уровня глубины. Однако, когда я запускаю TypeDoc над объектом, он не выбирает типы, которые были определены, вместо этого предполагая, что они «любые». Я думаю, что я принял нестандартный подход к кодированию этого объекта. Как настроить этот объект в соответствии с предпочтительным синтаксисом TypeScript , чтобы TypeDoc создавал ожидаемую документацию?

Сначала я попробовал то, что ожидал, сработает:

class ClassName {

    /**
    * A description of what this status is.
    */
    status: {
             /**
             * A description of what this property is.
             */
        pair: string[],
        db: {
            ready: boolean,
            interval: number
        }
    } = {
            pair: [], ...
    } ...
}

Это не сработало. Свойство pair не было определено в произведенной документации. Затем я переместил комментарии для TypeDoc в значения по умолчанию, которые я установил для свойств объекта:

class ClassName {

    /**
    * A description of what this status is.
    */
    status: {
        pair: string[],
        db: {
            ready: boolean,
            interval: number
        }
    } = {
             /**
             * A description of what this property is.
             */
            pair: [], ...
    } ...
}

Это сработало в том, что TypeDoc распознал бы комментарии как относящиеся к следующему объекту, но определил бы его как "любой". В этот момент я решил, что не следую стандартному способу определения объектов в TypeScript , потому что не смог найти в Интернете пример, который соответствовал бы этому способу определения свойства класса.

Я понимаю, что документация может быть создана с использованием Интерфейсы . Однако TypeDoc затем разделяет каждый Интерфейс на свою собственную страницу. Это делает документацию очень трудной для чтения. Но это привело меня к последующему вопросу: является ли это правильным способом определения свойств класса многоуровневого объекта ?

...