大佬教程收集整理的这篇文章主要介绍了Angular2 APP_INITIALIZER不一致,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要该应用程序在加载数据之前不做任何事情.
app.module.ts
import { NgModule,APP_INITIALIZER } from '@angular/core'; import { http,httpR_240_11845@odule,JsonpModule } from '@angular/http'; import { Userservice } from '../services/user.service'; <...> @NgModule({ imports: [ BrowserModule,FormsModule,JsonpModule,routIng ],declarations: [ AppComponent,<...> ],providers: [ <...> Userservice,{provide: APP_INITIALIZER,useFactory: (userServ: UserservicE) => () => userServ.getUser(),deps: [Userservice,http],multi: true } ],bootstrap: [AppComponent]
user.service.ts
@Injectable() export class Userservice { public user: User; constructor(private http: http) { } getUser(): Promise<User> { console.log('get user called'); var observable= this.http.get('/auth/getuser',{ headers: getHeaders() }) .map(extractData); observable.subscribe(user => {thiS.User = user; console.log(thiS.User)}); return observable.toPromise(); } }
getUser(): Promise<User> { console.log('get user called'); var promise = this.http.get('/auth/getuser',{headers: getHeaders()}) .map(extractData) .toPromise(); promise.then(user => { thiS.User = user; console.log(thiS.User); }); return promise; }
我面临着同样的问题,使用承诺而不是观察,对我来说是窍门.
以上是大佬教程为你收集整理的Angular2 APP_INITIALIZER不一致全部内容,希望文章能够帮你解决Angular2 APP_INITIALIZER不一致所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。