验证对象解构
validate object destructuring
假设我们有两个函数
/**
* @typedef MyResponse
* @property {Number} id - my awesome id
* @property {Array<Number>} attributes - list of ids
* */
/**
* @return {Promise<MyResponse>}
* */
function request0() {
return Promise.resolve({id: 1, attributes: [1,2,3]});
}
和
(async function () {
const { foo } = await request0(); // but it doesn't return foo, it returns id and attributes
console.log(foo);
})();
是否可以以某种方式突出显示此类错误?我试图在 eslint 上找到一些东西,但没有运气。
谢谢
您可以在文件开头简单地添加 // @ts-check
而无需 eslint。
然后,你可以看到你的 foo
有红线。
但是,你需要用这种方式将它添加到每个文件中。
Type checking JavaScript 和 vscode 中的更多详细信息。
假设我们有两个函数
/**
* @typedef MyResponse
* @property {Number} id - my awesome id
* @property {Array<Number>} attributes - list of ids
* */
/**
* @return {Promise<MyResponse>}
* */
function request0() {
return Promise.resolve({id: 1, attributes: [1,2,3]});
}
和
(async function () {
const { foo } = await request0(); // but it doesn't return foo, it returns id and attributes
console.log(foo);
})();
是否可以以某种方式突出显示此类错误?我试图在 eslint 上找到一些东西,但没有运气。
谢谢
您可以在文件开头简单地添加 // @ts-check
而无需 eslint。
然后,你可以看到你的 foo
有红线。
但是,你需要用这种方式将它添加到每个文件中。
Type checking JavaScript 和 vscode 中的更多详细信息。