You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在@type或@typedef中引用其他对象的键?VSCode解析异常求助

在JSDoc的@typedef/@type中引用另一个对象的键的方法

你直接用moo.name的写法无法被JSDoc正确解析,需要借助TypeScript的类型查询语法来实现。修改代码如下:

/**
 * @typedef {{name: {name: string}}} moo
 * @typedef {{name: typeof moo['name']}} moo2
 */

这里通过typeof moo['name']来获取moo类型里name属性的具体类型,VSCode就能正确将moo2解析为{name: {name: string}}的结构。这种写法依赖VSCode内置的JavaScript语言服务对TypeScript类型语法的支持,无需额外配置即可生效。

内容的提问来源于stack exchange,提问作者Grithin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 19:45:55