要解决Angular 6中无法使用Subject订阅消息的问题,可以按照以下步骤进行操作:
import { Subject, Observable } from 'rxjs';
messageSubject: Subject = new Subject();
messageObservable: Observable = this.messageSubject.asObservable();
this.messageSubject.next('Hello, world!');
this.messageObservable.subscribe((message) => {
console.log(message); // 打印收到的消息
});
完整示例代码如下:
import { Component } from '@angular/core';
import { Subject, Observable } from 'rxjs';
@Component({
selector: 'app-root',
template: `
`
})
export class AppComponent {
messageSubject: Subject = new Subject();
messageObservable: Observable = this.messageSubject.asObservable();
sendMessage() {
this.messageSubject.next('Hello, world!');
}
ngOnInit() {
this.messageObservable.subscribe((message) => {
console.log(message); // 打印收到的消息
});
}
}
通过按照上述步骤操作,就可以在Angular 6中成功使用Subject订阅消息了。