我想发出一个值。
根据此post,以下内容应有效:
var requestStream = Rx.Observable.just('https://api.github.com/users');
然而,这不起作用。 just
未定义。
它被弃用了吗?有什么东西我可以用吗?
答案 0 :(得分:39)
很多内容隐藏在:import 'rxjs/Rx';
您可以尝试Observable.of
获取单个值。
这对我有用(plunker):
import {Component} from 'angular2/core';
import {Observable} from 'rxjs/Observable';
import 'rxjs/Rx';
@Component({
selector: 'my-app',
providers: [],
template: `
<div>
<h2>Hello {{test | async}}</h2>
</div>
`,
directives: []
})
export class App {
test: Observable<any> = Observable.of("I'm an observable");
constructor() {
}
}
答案 1 :(得分:26)
.just(value)
来自RxJS v4而angular2正在使用v5。它经过了大量的重写,并且仍处于测试阶段,因此运营商在v5中缺少/更改了名称。
.of
很好。我只是想补充一点,你也可以使用.from
,只要你有一个值或一组值,它就可以工作。要重复使用您接受的答案中的示例,您可以使用类似(plunkr):
//our root app component
import {Component} from 'angular2/core';
import {Observable} from 'rxjs/Observable';
import 'rxjs/Rx';
@Component({
selector: 'my-app',
providers: [],
template: `
<div>
<h2>Hello {{test | async}}</h2>
</div>
`,
directives: []
})
export class App {
test: Observable<any> = Observable.from(["I'm an observable"]);
constructor() {
}
}
答案 2 :(得分:2)
使用of函数:
import {of} from 'rxjs';
var requestStream = of('https://api.github.com/users');