I started using Angular2 Observable
, but I can\'t find something similar to .then
that I used with Promises
.
This is what I want
When you call subscribe(...)
a Subscription
is returned which doesn't have a toPromise()
. If you move the code from subscribe
to map
you can use toPromise()
instead of subscribe
return this._httpClient.post('LoginAction', credentials)
.map(res => res.json())
.map(user => {
return new User(user);
}).toPromise();
and the caller will get a Promise
where he can get the value using
public login() {
this._user = AuthService.getInstance().login(this._loginInfo)
.then(result => {
doSomething();
});
}
but you get the same result if you omit `.toPromise() and the caller uses it like
public login() {
this._user = AuthService.getInstance().login(this._loginInfo)
.subscribe(result => {
doSomething();
});
}
where the only difference is subscribe()
instead of then()
and if the user of the library prefers the reactive style he will prefer using subscribe()
like he is used to.