Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

126
Views
por qué APP_INITIALIZER de angular no funciona

Es parte del código de mi proyecto. Antes de que se inicie la aplicación, el servicio de usuario debe verificar los permisos a través de una función que verifica los permisos del usuario. Sin embargo, la función APP_INITIALIZER no funciona correctamente. (El apiservice obtuvo la información con la solicitud de obtención y confirmó que no hubo ningún problema con la operación). Me pregunto si hay una manera de usar Observable sin usar async/await.

 // APP_INITIALIZER function function load(userService: UserService){ () => { return userService.getUser(); } } // userService - getUser() this.user$ = new Behavior Subject(null); getUser() { from(this.apiService.getUser()){ user => this.user$.next(user) } }

Como lo he probado, funciona bien si cambia el código de servicio de usuario de la siguiente manera. Sin embargo, me pregunto si hay alguna forma de hacerlo sin usar toPromise, lastValueFrom.

 // userService - getUser() this.user$ = new Behavior Subject(null); getUser() { const user = from(this.apiService.getUser()); user.subscribe(user => this.user$.next(user)); return user.toPromise(); }
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

¿Por qué lo haces tan complicado? No creo que necesites un tema de comportamiento. Puedes hacerlo así:

 getUser():Observable<any> { return this.apiService.getUser(); }

y si necesita almacenar en caché al usuario, puede hacerlo así:

 user:any = null; getUser():Observable<any> { if(this.user){ return of(this.user); } return this.apiService.getUser().pipe( tap(user => this.user = user) ); }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!