在 TypeScript 中,将变量键/值对添加到对象时,会在索引时出现类型错误的原因是对象的类型定义中没有包含新添加的键。为了解决这个问题,有几种方法可以使用。
interface MyObject {
[key: string]: any;
}
const obj: MyObject = {};
obj["key"] = "value";
上述代码中,我们使用了索引签名[key: string]: any
来表示对象的类型,这样就可以在对象中添加任意键/值对。
const obj: { [key: string]: any } = {};
(obj as any)["key"] = "value";
上述代码中,我们使用类型断言(obj as any)
来告诉 TypeScript 添加的键是合法的。
interface MyObject {
key1: any;
key2: any;
}
const obj: MyObject = {
key1: "value1",
};
obj.key2 = "value2";
上述代码中,我们在接口MyObject
中指定了要添加的键的名称,并在对象的初始化和之后的赋值中使用了这些键。
以上是解决在 TypeScript 中将变量键/值对添加到对象时出现类型错误的几种常见方法。对于每种方法,都可以根据实际情况选择最适合的方法来解决问题。至于推荐的腾讯云相关产品和产品介绍链接地址,由于要求不涉及特定品牌商,无法提供相关信息。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云