JSDoc用于动态附加属性(VSCode)

时间:2019-08-21 23:28:36

标签: javascript visual-studio-code jsdoc

我有一个用于基于参数添加动态属性的类的构造函数:

class Foo {
    constructor(attach) {
        for (const key in attach) {
            this[key] = attach[key];
        }
    }
}

class Bar {
    getBar() { return "bar"; }
}


const foo = new Foo({
    bar: new Bar()
})

console.log(foo.bar.getBar());

属性只是注入的属性的简写。

我想以某种方式记录Foo,以便呼叫站点可以实现不错的自动完成。

我尝试了以下代码的一些变体,但是VSCode在Foo实例中仍然找不到T的属性:

/**
 * Foogler
 * @template {{[key:string]: Bar}} T
 * @type {Foo & T}
 */
class Foo {
    /**
     * Creates a new Foo
     * @param {T} attach
     */
    constructor(attach) {

0 个答案:

没有答案