Установить тип свойства класса ES5 с помощью JSDoc

У меня есть класс, который имеет свойство:

class MyClass {
    constructor() {
        this.property = null;
    }
}

Свойство может быть null или Array пример. Я попробовал это:

/**
 * @property property {Array}
 */
class MyClass ...

Это:

/**
 * @property MyClass.property {Array}
 */
class MyClass ...

И это:

class MyClass {
    /**
     * @property property {Array}
     */
    constructor() ...

И я все еще вижу это в intellisense:

code> (свойство) MyClass.property: any </ code (свойство) MyClass.property: any

Так может кто-нибудь сказать мне, как это сделать правильно?

1 ответ

Решение

Пока что лучший подход был такой:

class MyClass {
    constructor() {
        /** @type {MyClass2} **/
        this.property = null;
    }
}

Это все еще немного глючит, но в большинстве случаев это работает.