元素隐式具有“任何”类型,因为“字符串”类型的表达式

亚历山大

为什么我会收到这个错误?

Element implicitly has an 'any' type because expression of type 'string' can't be used to index type '{ 0: string; 1: string; 2: string; 3: string; }'.
  No index signature with a parameter of type 'string' was found on type '{ 0: string; 1: string; 2: string; 3: string; }'.ts(7053)

这是我的代码:我专门将索引设为字符串,所以应该没有问题,但是我的 StatusMap 变量给了我这个红旗..

 const getStatusMeaning = (index: string) => {
    const StatusMap = {
      '0': 'Unknown',
      '1': 'Pending',
      '2': 'Success',
      '3': 'Failure',
    }

    return StatusMap[index]
  }
奥利桑普斯

作为@Paleo 答案的替代方法,如果您想要一个强类型方法,我会推荐以下方法:

const StatusMap = {
  '0': 'Unknown',
  '1': 'Pending',
  '2': 'Success',
  '3': 'Failure',
};

const getStatusMeaning = (index: keyof typeof StatusMap): string => {
  return StatusMap[index];
}

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引“类型”类型

元素隐式具有“任意”类型,因为类型“字符串”的表达式不能用于索引类型A

TypeScript:元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引类型

反应打字稿错误 - 元素隐式具有任何类型,因为类型字符串的表达式不能用于索引类型 {}

Angular - 元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引类型

如何修复元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引类型?

TS7053:元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引“User_Economy”类型

错误 TS7053:元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引“模块类型”

元素隐式具有“任意”类型,因为类型“字符串”的表达式不能用于索引

元素隐式具有 'any' 类型,因为类型 'string' 的表达式不能用于索引类型 {"1" : { "key": string}; "2" : { "key": 字符串};}

元素隐式地具有“ any”类型,因为在打字稿中将字符串转换为enum时,索引表达式不是enum的“ number”类型

React Typescript:元素隐式具有“任何”类型,因为索引表达式不是“数字”类型

全局窗口对象:元素隐式具有“任何”类型,因为索引表达式不是“数字”类型。ts

隐式具有“任何”类型,因为 typescript 中的类型表达式

元素隐式具有“ any”类型,因为索引表达式不是“ number”类型[7015]

模板文字键具有“任何”类型,因为“字符串”类型的表达式不能用于索引类型

元素隐式具有“ any”类型,因为ANGULAR中的type表达式

打字稿“元素隐式具有'任何'类型,因为'Rank'类型的表达式不能用于索引类型'IPowerCards'”

TS7053:元素隐式具有“任何”类型,因为“页面”类型的表达式不能用于索引类型“对象”

元素隐式具有“任何”类型,因为“数字”类型的表达式不能用于索引类型“{}”。.ts(7053) VUEJS

元素隐式具有“any”类型,因为“string”类型的表达式不能用于索引“Breakpoints”类型

元素隐式地具有“ any”类型,因为类型“ any”的表达式不能用于索引类型

元素隐式地具有“ any”类型,因为类型“ string”的表达式不能用于索引类型

元素隐式具有“any”类型,因为“string”类型的表达式不能用于索引“Palette”类型

元素隐式具有 'any' 类型,因为类型 'string' 的表达式不能用于索引类型 '{ AT: number; 是:数字,...}`

Typescript错误:元素隐式具有“ any”类型,因为类型“ string”的表达式不能用于索引类型

TypeScript - 元素隐式具有“any”类型,因为“storyFile”类型的表达式不能用于索引类型“{}”

元素隐式具有“any”类型,因为“string”类型的表达式不能用于索引“PointDto”类型

该元素隐式具有类型“any”,因为类型“string”的表达式不能用于索引该类型