• 搜索
    搜新闻
  • 您的位置: 首页 >  资讯

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

    来源腾讯云时间:2023-04-25 06:35:29


    (资料图片)

    导文

    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];}

    关键词:

    下一篇: 最后一页
    上一篇: 明天开始,气温回到春天该有的样子