在Angular 8中,你可以使用subscribe
方法来获取Observable的值。在ngOnInit
生命周期钩子中,你可以订阅Observable,并在回调函数中获取值。
以下是一个示例代码:
import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
@Component({
selector: 'app-example',
template: `
{{ data }}
`,
styleUrls: ['./example.component.css']
})
export class ExampleComponent implements OnInit {
data: any;
ngOnInit() {
const myObservable = new Observable(observer => {
setTimeout(() => {
observer.next('Observable value');
observer.complete();
}, 2000);
});
myObservable.subscribe(value => {
this.data = value;
});
}
}
在上面的示例中,我们创建了一个简单的Observable,并在2秒后发出一个值。在ngOnInit
中,我们订阅了这个Observable,并在回调函数中将值赋给data
属性。最后,我们在模板中显示data
的值。
当组件初始化时,ngOnInit
生命周期钩子将被调用,并且Observable的值将被获取并赋给data
属性。这将导致模板中的div
标签显示Observable value
。
请注意,当Observable发出一个新值时,回调函数将被调用,并且你可以在其中更新你的组件。