Javascript 角度5:从未分配给变量的受试者处可观察到
我有一个service.ts文件,在我的角度组件之间传递一个可观测值,并且我有一个组件上的点击事件的结果被传递给下面的组件 我的问题是,我可以Javascript 角度5:从未分配给变量的受试者处可观察到,javascript,angular,typescript,observable,subject,Javascript,Angular,Typescript,Observable,Subject,我有一个service.ts文件,在我的角度组件之间传递一个可观测值,并且我有一个组件上的点击事件的结果被传递给下面的组件 我的问题是,我可以console.log我想存储在selectedContact变量(见下文)中的对象,但当我尝试将subscribe()响应分配给我的selectedContact变量,然后将其绑定到我的HTML时,它只显示为“[object object] 这是我的密码: import { Component, OnInit } from '@angular/core'
console.log
我想存储在selectedContact
变量(见下文)中的对象,但当我尝试将subscribe()
响应分配给我的selectedContact
变量,然后将其绑定到我的HTML时,它只显示为“[object object]
这是我的密码:
import { Component, OnInit } from '@angular/core';
import { AppComponent } from '../app.component';
import { ApiService } from '../api.service';
@Component({
selector: 'app-contact-details',
templateUrl: './contact-details.component.html',
styleUrls: ['./contact-details.component.scss']
})
export class ContactDetailsComponent implements OnInit {
selectedContact: any[] = [];
error: string;
constructor(private _apiService: ApiService) { }
ngOnInit() { this.showContact() }
showContact() {
this._apiService.newContactSubject.subscribe(
data => this.selectedContact = data)
}
}
当我运行此命令时:
showContact() {
this._apiService.newContactSubject.subscribe(
data => console.log(data))
}
showContact() {
this._apiService.newContactSubject.subscribe(
data => this.selectedContact = data)
}
我将正确的对象记录到控制台(来自其他组件的click事件)
但当我运行这个:
showContact() {
this._apiService.newContactSubject.subscribe(
data => console.log(data))
}
showContact() {
this._apiService.newContactSubject.subscribe(
data => this.selectedContact = data)
}
我得到[Object Object]
我错过了什么?谢谢 我认为在html中,您可以将
这个。selectedContact
绑定到某个html组件。但是由于this.selectedContact
是一个对象,因此必须像这样绑定到它的属性:{{selectedContact.proppertyName}
我认为在html中,您将this.selectedContact
绑定到某个html组件。但是由于this.selectedContact
是一个对象,因此必须像这样绑定到它的属性:{{selectedContact.proppertyName}
,如果这样做:
showContact() {
this._apiService.newContactSubject.subscribe(
data => this.selectedContact = JSON.stringify(data))
}
…你会看到你的对象,但它的格式不会那么好。您必须做更多的工作才能获得格式良好的输出。如果您这样做:
showContact() {
this._apiService.newContactSubject.subscribe(
data => this.selectedContact = JSON.stringify(data))
}
…你会看到你的对象,但它的格式不会那么好。您必须做更多的工作才能获得格式良好的输出