我今天在我的角度应用程序中遇到了奇怪的行为。
ERROR in src/main(A,B): error TS2339: Property 'XXX' does not exist on type '{}'.
该错误发生在以下代码行
xxx.subscribe(data => {
this.var = data.XXX
});
因此,基本上我订阅了一个可观察对象,并将数据从可观察对象映射到全局变量。我的角度应用程序按预期工作,因此此错误似乎对应用程序本身没有影响,但我仍然无法弄清这里出了什么问题。以下是data
的控制台日志:
console.log(data)
//{"XXX": "test"}
答案 0 :(得分:3)
Typescript抱怨数据中没有该属性,您可以使用任何属性或使用该属性创建一个接口,
xxx.subscribe((data:any) => {
答案 1 :(得分:1)
您已经实例化了数据,仅作为对象示例:data = {}
。
由于对象没有XXX
属性,因此会出现此错误。
因此解决方案将是data: {XXX: string, YYY: number ....} = {}
否则,您可以使用data['XXX']
访问XXX,这是最简单的选择