我尝试在类中动态创建变量以存储值,并在ngModel和其他placee中使用它。
我知道,我可以像这样将值赋给ngOnInit()中的变量

export class Component implements OnInit{
   name: string;
   ngOnInit(){
       this.name = 'John Doe';
   }
}


但是我有一个问题-我从服务器API获取字段,不知道得到什么以及获得多少物品。我只能解析服务器响应并将值分配给新变量。

我不能这样做(TS2540:无法分配给“名称”,因为它是常量或只读属性。)

export class Component implements OnInit{
   ngOnInit(){
       name = 'John Doe';
   }
}


如何在ngOnInit()或其他地方为班级分配新字段? (我想我可以在构造函数中做到这一点,但是文档说我不应该将它与对API的Observable调用以及其他困难的事情一起使用)

最佳答案

您可以使用以下方法完成此任务:

ngOnInit() {
  this['prop'] = 'value';
}


这是一个工作示例的链接:https://stackblitz.com/edit/dynamic-class-props

10-08 19:20