【发布时间】:2021-03-17 21:02:15
【问题描述】:
由于 --strict_checks 和 typescript eslint 检查,我正在尝试修复我的代码中的一些新错误。下面的代码示例用于我解释的所有内容。假设我有一个对象 a,我想直接将其指定为地图以解决一些错误。我不能使用关键字“任何”。这就是我想要做的:
isEquivalent(a: Object, b: Object): boolean {
const aObject: {[index: string]: Object} = a;
const bObject: {[index: string]: Object} = b;
}
使用实际代码 sn-p 链接到 typescript playground:here 但这会引发错误:
错误 TS2322:类型 'Object' 不可分配给类型 '{ [index: string]: Object; }'。 “对象”类型可分配给极少数其他类型。您的意思是改用“任何”类型吗? “对象”类型中缺少索引签名。
谁能指出我指定对象的类型的解决方案,而不使用“任何”?或者如果这不可能,请告诉我。
【问题讨论】:
-
进行了您要求的更改。
标签: typescript eslint