GOOGLE ADS

lunes, 18 de abril de 2022

¿Tengo que darme de baja de los observables de ActivatedRoute (por ejemplo, params)?

Encuentro muchos ejemplos en los que a los ActivatedRouteObservables les gusta paramso urlestán suscritos pero no cancelados.

constructor(private route: ActivatedRoute) {}
ngOnInit() {
this.route.params
// (+) converts string 'id' to a number
.switchMap((params: Params) => this.service.getHero(+params['id']))
.subscribe((hero: Hero) => this.hero = hero);
}


  • ¿Los objetos de ruta y las suscripciones se destruyen automáticamente y se crean de nuevo para cada creación de componente?

  • ¿Tengo que preocuparme por darme de baja de esosObservable?

  • Si no, ¿puede explicar qué sucede con el árbol de objetos ActivatedRoute en Router. routerState?



Solución del problema

No

de los documentos:

Al suscribirse a un observable en un componente, casi siempre organiza cancelar la suscripción cuando se destruye el componente.

Hay algunos observables excepcionales donde esto no es necesario. Los observables ActivatedRoute están entre las excepciones..

ActivatedRoute y sus observables están aislados del propio enrutador. El enrutador destruye un componente enrutado cuando ya no es necesario y el ActivatedRoute inyectado muere con él.

Siéntase libre de darse de baja de todos modos. Es inofensivo y nunca una mala práctica.

No hay comentarios.:

Publicar un comentario

Flutter: error de rango al acceder a la respuesta JSON

Estoy accediendo a una respuesta JSON con la siguiente estructura. { "fullName": "FirstName LastName", "listings...