【发布时间】:2020-10-09 18:18:07
【问题描述】:
所以我有一个带有数据属性的响应对象。对于这个例子,它的数据是文本类型。我想要 data 属性,并且我想要 VSCode 识别它的类型,这样我就可以得到一些 IntelliSense 的喜爱。
const response = await someRequest();
const {data} = response;
首先我尝试:
const response = await someRequest();
/** @type {string} */
const {data} = response;
没有,那我试试:
const response = await someRequest();
const {
/** @type {string} */
data,
} = response;
那也没用。
那我试试:
/**
* @typedef {Object} Response
* @property {string} data
*/
/** @type {Response} */
const response = await someRequest();
const { data } = response;
成功了!
我不确定它有多大的不同,但我使用的是 VSCode 2020 年 9 月版(1.50 版)。
编辑:我改变了我的问题的结束方式,因为事实证明我的最后一个示例确实有效......
【问题讨论】:
-
stackoverflow.com/questions/52544065/… 链接是否回答了您的问题。
-
@Dolly 谢谢你帮我解决这个问题 :-) 所以,内联类型声明不起作用(这基本上是第二次尝试,但由于一些奇怪的怪癖,我的最后一个例子(你的例子确实涵盖)确实有效。我会接受它,但我不知道现在和昨天之间发生了什么变化......我猜它要么包含在 VSCode 的 9 月更新中,要么(更有可能)出现错误在键盘和椅子之间。
标签: javascript visual-studio-code jsdoc