为什么VS代码显示JSDoc中var的类型信息,而不显示JavaScript中其他成员的类型信息?
Visual Studio代码中的以下intellisense差异让我感到困惑:为什么VS代码显示JSDoc中var的类型信息,而不显示JavaScript中其他成员的类型信息?,javascript,visual-studio-code,intellisense,jsdoc,Javascript,Visual Studio Code,Intellisense,Jsdoc,Visual Studio代码中的以下intellisense差异让我感到困惑: function ExampleModule() { /** @type { string } */ this.myMember; // tooltip shows 'any' /** @type { string } */ var mySecondMember; // tooltip shows 'string' } 我想通过JSDoc将类型信息添加到我的模块中,这在某些情况
function ExampleModule() {
/** @type { string } */
this.myMember; // tooltip shows 'any'
/** @type { string } */
var mySecondMember; // tooltip shows 'string'
}
我想通过JSDoc将类型信息添加到我的模块中,这在某些情况下很有效,比如方法签名,显然它适用于使用var
关键字声明的变量,但如果我将成员添加到我的对象中(如this
关键字所示),则不起作用
我已经查看了文档,但它们似乎没有解释为什么this.myMember
不生成intellisense信息
是否有任何方法可以改进显示的成员类型信息,或者是否存在有关支持的语言构造的更详细信息?类表示法不是这样工作的。 首先定义复合类型,然后将其用于变量。 我不知道你是否能定义“这个”类型
/**
* @typedef {Object} ExempleModule
* @property {string} myMember
*/
/** @type {ExempleModule} */