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