首页 > 资讯 > > 内容

当前报道:Ts中string、number和any等类型 不能当做索引用,怎么处理?

发表时间:2023-04-25 04:25:09 来源:腾讯云


【资料图】

导文

Ts中string、number和any等类型 不能当做索引用,怎么处理?报错:元素隐式具有“any”类型,因为类型为“number”的表达式不能用于索引类型“[***”。在类型“[ ***”上找不到具有类型为“number"的参数的索引签名。 ts(7053)keyof 的使用

问题

Ts中string、number和any等类型 不能当做索引用,怎么处理?

const handerField = (item: number) => {   caselist= data.showList[item]//报错}

元素隐式地拥有 any 类型,因为 number类型不能被用于索引 {} 类型。

解决方法

方法1

const handerField = (item: number) => {   caselist= (data.showList as any)[item];}

方法2

const handerField = (item: number) => {   caselist= data.showList [item as keyof typeof data.showList ]}

方法3

const handerField =  function (obj: T, key: K) {  return obj[key];}
标签:

Copyright ©  2015-2022 东亚产业网版权所有  备案号:琼ICP备2022009675号-13   联系邮箱:435 227 67 @qq.com