Avatar ·

如何在TypeScript中动态向对象添加属性而不出现类型错误?

大家好!我是TypeScript新手,在处理对象时遇到了问题。我有一个空对象,想根据条件动态地填充属性。例如,我从API获取数据,根据响应需要向对象添加某些字段。 以下是我尝试做的简化示例: ```typescript const user = {}; if (someCondition) { user.name = 'Алексей'; // 错误:类型'{}'上不存在属性'name' } if (anotherCondition) { user.age = 30; // 错误:类型'{}'上不存在属性'age' } ``` TypeScript报错,因为空对象`{}`没有这些属性。我明白这是由于严格类型化导致的,但如何正确声明对象以便可以动态添加属性?我尝试过使用`any`,但这破坏了TypeScript的初衷。有没有更正确的方法?希望有带解释的代码示例。提前感谢! <<>>

解决方案