在Angular 6中,你可以使用RxJS的操作符来将订阅结果中的成员分配给一个变量。以下是一个示例代码:
import { Component } from '@angular/core';
import { Observable } from 'rxjs';
@Component({
selector: 'app-root',
template: `
{{ data }}
`
})
export class AppComponent {
data: string;
constructor() {
this.assignMember();
}
assignMember() {
const observable = new Observable(observer => {
setTimeout(() => {
observer.next('Hello, Angular 6!');
observer.complete();
}, 2000);
});
observable.subscribe(result => {
this.data = result;
});
}
}
在上面的代码中,我们创建了一个Observable对象,并在其中使用setTimeout模拟异步操作。在异步操作完成后,我们使用observer.next()
方法将结果发送给订阅者。然后,我们使用observable.subscribe()
方法来订阅Observable,并将结果分配给组件的data
变量。
当组件初始化时,assignMember()
方法会被调用,然后在2秒后将结果赋值给data
变量。在组件的模板中,我们使用插值表达式{{ data }}
来显示结果。
这样,当Observable中的结果准备好时,它将被分配给data
变量,并在模板中显示出来。