在Typescript 2版本之前,我曾用以下方式将枚举转换为字符串:
public myFunction(myEnum: MyEnum): string { return MyEnum[myEnum]; }
现在使用新版本的Typescript会产生以下错误:索引表达式参数必须是'string','number','symbol'或'any'类型 .
你知道我怎么解决这个问题吗?
我相信你得到的错误是你声明 myFunction 返回一个字符串,但它实际上没有返回任何东西......
myFunction
public myFunction(myEnum: MyEnum): string { console.log(MyEnum[myEnum]); }
通过返回值来修复它...
或者通过更改返回类型...
public myFunction(myEnum: MyEnum): void{ console.log(MyEnum[myEnum]); }
显示事情仍然有效的完整示例 .
enum Example { Red, Blue, Green } alert(Example[Example.Red]); function myFunction(myEnum: Example): string { return(Example[myEnum]); } alert(myFunction(Example.Blue));
1 回答
我相信你得到的错误是你声明
myFunction
返回一个字符串,但它实际上没有返回任何东西......通过返回值来修复它...
或者通过更改返回类型...
显示事情仍然有效的完整示例 .