gpt4 book ai didi

javascript - 如何处理 typescript 中的常量?

转载 作者:搜寻专家 更新时间:2023-10-30 21:46:16 31 4
gpt4 key购买 nike

我有一个像这样的 react 组件:

const myComponent = ({constant}: Iprops) => (
<div>
{CONSTANTS[constant].property ? <showThis /> : null
</div>
)

它提示 元素隐式具有“任何”类型,因为类型“object”没有索引签名

如何将CONSTANTS 添加到我的界面?我试过了

interface IProps {
[CONSTANTS: any]: {
constant: boolean;
}
}

但显然它不喜欢那样。如何声明对象中每个键的类型?

谢谢

最佳答案

我不确定我是否理解您实际需要的对象的形状。但是您可以使用以下语法键入对象:

const CONSTANTS: { [key:string]: boolean } = {}
CONSTANTS["something1"] = false; // ok
CONSTANTS["something2"] = "Hey"; // not ok

这有点棘手,因为 key 实际上可以 be either string or number但是值类型是正确执行的,因此您仍然可以在那里使用更复杂的类型,而不是 boolean

关于javascript - 如何处理 typescript 中的常量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54397740/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com