如何让VS Code悬停时显示JSDoc @typedef返回值的结构与属性描述?
解决VS Code中JSDoc返回类型同时显示结构与属性描述的问题
方法一:使用对象字面量风格的@typedef定义类型
将原有的@typedef写法改为对象字面量形式,VS Code在悬停函数返回值时会直接展开显示完整的结构和属性注释:
/** * An object containing a person's details. * @typedef {{ * name: string; // The person's name. * age: number; // The person's age. * }} Person */ /** * Returns a person's name and age from a string. * @param {string} personDetails - The string containing the person's info. * @return {Person} An object containing `name` and `age` properties. */ const getPersonDetails = (personDetails) => { const [name, age] = personDetails.split(','); return { name, age: Number(age), // 修正:将字符串转成number类型,匹配类型定义 }; };
修改后,悬停getPersonDetails的返回值时,会直接展示Person类型的完整结构,包含每个属性的类型和描述。
方法二:调整VS Code设置自动展开自定义类型
如果偏好保留原有的@typedef写法,可通过修改VS Code设置实现悬停时自动展开自定义类型结构:
- 打开VS Code设置(快捷键
Ctrl+,/Cmd+,) - 在搜索框输入
typescript.preferences.showFullStructures - 将该选项设置为
true
设置生效后,悬停函数返回值的Person类型时,VS Code会自动展开显示其完整属性结构及对应描述。
内容的提问来源于stack exchange,提问作者Deadmano
相关产品推荐
相关产品推荐

