这是我的代码的一部分:
const myObj: object = {}
const propname = 'propname'
myObj[propname] = 'string'
但是我得到了错误:
ERROR in path/to/file.ts(4,1)
TS7053: Element implicitly has an 'any' type because expression of type '"propname"' can't be used to index type '{}'.
Property 'propname' does not exist on type '{}'.
这有什么问题,我该如何解决?
答案 0 :(得分:2)
您必须定义对象具有哪种索引类型。在您的情况下,它是一个基于string
的索引。
const myObj: {[index: string]:any} = {}
答案 1 :(得分:-2)
为什么只需简单地将'object'替换为'any':
const myObj: any = {}
const propname = 'propname'
myObj[propname] = 'string'
另一个简短的选择。