TypeScript-如何从命名空间动态获取变量?
是否可以通过字符串值从typescript命名空间获取变量? 我想多做点,少做点。从命名空间:TypeScript-如何从命名空间动态获取变量?,typescript,Typescript,是否可以通过字符串值从typescript命名空间获取变量? 我想多做点,少做点。从命名空间: namespace Keys { const string key1 = 'x'; const string key2 = 'y'; } 按字符串获取值: function getKey(suffix: string) { return Keys[`key${suffix}`]; } 对于调用getKey('1')它应该返回x 上面的代码不起作用。我只是想到在这个名称空间中
namespace Keys {
const string key1 = 'x';
const string key2 = 'y';
}
按字符串获取值:
function getKey(suffix: string) {
return Keys[`key${suffix}`];
}
对于调用getKey('1')
它应该返回x
上面的代码不起作用。我只是想到在这个名称空间中创建一个helper函数。还有别的办法吗
编辑
将export
添加到值后,出现以下问题:
元素隐式具有“any”类型,因为类型“typeof”没有索引签名
。对any
进行显式强制转换是解决这个问题的方法。我找不到更好的方法。您需要导出值,以便在命名空间之外访问它们
名称空间键{
导出常量key1='x';
导出常量key2='y';
}
解决方案的其余部分看起来不错。您需要导出这些值,以便在命名空间之外访问它们
名称空间键{
导出常量key1='x';
导出常量key2='y';
}
其余的解决方案看起来不错