当Angular组件中显示[object Object]时,通常是由于值的类型不是字符串。要解决该问题,需要将值转换为字符串,可以使用管道或订阅属性。
例如:假设有一个组件,它具有以下属性
myObj = { name: 'John', age: 30 }
当该组件使用{{myObj}}来显示该属性时,将看到[object Object],因为该属性的值是一个对象。要显示该属性的值,可以将它转换为字符串,如下所示:
{{ myObj | json }}
上述代码将会以json字符串的形式显示myObj属性的值。
另一种方法是订阅属性并使用字符串插值来显示该属性的值,如下所示:
myObj: any = {};
ngOnInit() {
this.myService.getMyObj().subscribe(obj => {
this.myObj = obj;
});
}
然后在组件模板中,您可以使用字符串插值来显示myObj属性的值,如下所示:
{{ myObj | json }}
通过这些方法,您可以将Angular组件中显示[object Object]的问题解决掉。