我responseBody
未定义,但我在msg_body中收到订阅响应。responseBody
怎么了?
let stomp_subscription = this._stompService.subscribe('/topic/queue');
stomp_subscription.map((message: Message) => {
return message.body;
}).subscribe((msg_body: string) => {
console.log(`Received: ${msg_body}`);
this.responseBody = JSON.parse(msg_body);
console.log('RESPONSECODE' + this.responseBody.ResponseInfo.ResponseCode);
});
您正在使用来自可观察量的.map()
运算符的return
语句。因此,该值不会传递给针对可观察量的下一个.subscribe()
调用。你能试试下面的代码吗
let stomp_subscription = this._stompService.subscribe('/topic/queue');
stomp_subscription.map((message: Message) => message.body )
.subscribe((msg_body: string) => {
console.log(`Received: ${msg_body}`);
this.responseBody = JSON.parse(msg_body);
console.log('RESPONSECODE' + this.responseBody.ResponseInfo.ResponseCode);
});