私はすでにこの提案を試しましたが、Observable には「fromPromise」メソッドがなく、typescript でエラーが発生します。
import {Observable} from "rxjs/Rx";
import {Http} from "@angular/http";
import {GLOBAL_CONST} from "../global-const";
import {Resolve, ActivatedRouteSnapshot, RouterStateSnapshot} from "@angular/router";
export class ResolverSignupBegin{//} implements Resolve<any>{
signupBeginData:any[];
constructor(private http:Http){}
getData(){
return this.http.get(GLOBAL_CONST.apiPath + "/user/login/api-logged-in")
.map(res => res.json())
.subscribe(
(data) => { console.log("data", data); return data; },
(err) => { console.log("error", err); }
);
}
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot):Observable<any>{
return this.getData();
}
}
「this」.getData に「エラー:(28, 16) TS2322: タイプ 'Subscription' はタイプ 'Observable' に割り当てられません。タイプ 'Subscription' にプロパティ '_isScalar' がありません。」というエラーがあります。