如何在JSDOC中正确定义this的指向以支持代码自动补全?
如何在JSDOC中描述函数内
this的指向类型? 当然可以实现,你只需要使用JSDOC的@this标签,明确标注函数内部this对应的对象类型即可,主流编辑器(如VS Code)会识别该标签并提供对应的属性自动补全。
修改后的代码示例如下:
/** * 这是简化后的业务代码示例 * @this {CalledClass} 声明此函数内的`this`指向CalledClass的实例 */ const unboundedFunction = function () { console.log(this); this.parameter = 50; // 此时编辑器会自动补全CalledClass的parameter属性 } class CalledClass { parameter = 'test'; callOutsideFunction() { unboundedFunction.bind(this)(); } } const obj = new CalledClass(); obj.callOutsideFunction();
原理说明:@this标签是JSDOC专门用于指定函数执行时this上下文类型的语法,这里直接指定为CalledClass,编辑器就能关联到类的属性定义,实现参数、属性的自动补全效果。
内容的提问来源于stack exchange,提问作者Sol
相关产品推荐
相关产品推荐

