Emit a single value
Use the of function:
import {of} from 'rxjs';
var requestStream = of('https://api.github.com/users');
.just(value)
is from RxJS v4 while angular2 is using the v5. It has gone through an extensive rewrite, and it is still in beta so operators are missing/changed names in v5.
.of
is just fine, as MarkM mentioned. I just wanted to add that you can also use .from
which works if you have just one value, or an array of values. To reuse the example from your accepted answer, you would use something like (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() {
}
}
A lot of the stuff is tucked away in: import 'rxjs/Rx';
You might try Observable.of
for a single value.
This works for me (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() {
}
}