发出单个值
Emit a single value
我想发出一个值。
根据这个post,以下应该是有效的:
var requestStream = Rx.Observable.just('https://api.github.com/users');
但是,这不起作用。 just
未定义。
是否已弃用?有什么东西可以代替吗?
很多东西都隐藏在: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() {
}
}
.just(value)
来自 RxJS v4,而 angular2 使用的是 v5。它经过了广泛的重写,并且仍处于测试阶段,因此运算符在 v5 中是 missing/changed 名称。
.of
就好了,正如 MarkM 提到的那样。我只是想补充一点,如果您只有一个值或一组值,您也可以使用 .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() {
}
}
使用of函数:
import {of} from 'rxjs';
var requestStream = of('https://api.github.com/users');
我想发出一个值。
根据这个post,以下应该是有效的:
var requestStream = Rx.Observable.just('https://api.github.com/users');
但是,这不起作用。 just
未定义。
是否已弃用?有什么东西可以代替吗?
很多东西都隐藏在: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() {
}
}
.just(value)
来自 RxJS v4,而 angular2 使用的是 v5。它经过了广泛的重写,并且仍处于测试阶段,因此运算符在 v5 中是 missing/changed 名称。
.of
就好了,正如 MarkM 提到的那样。我只是想补充一点,如果您只有一个值或一组值,您也可以使用 .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() {
}
}
使用of函数:
import {of} from 'rxjs';
var requestStream = of('https://api.github.com/users');