打字稿错误:TS7053元素隐式具有“ any”类型

时间:2019-07-01 09:49:53

标签: typescript

这是我的代码的一部分:

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 '{}'.

这有什么问题,我该如何解决?

2 个答案:

答案 0 :(得分:2)

您必须定义对象具有哪种索引类型。在您的情况下,它是一个基于string的索引。

const myObj: {[index: string]:any} = {}

答案 1 :(得分:-2)

为什么只需简单地将'object'替换为'any':

const myObj: any = {}
const propname = 'propname'

myObj[propname] = 'string'

另一个简短的选择。