Supongo que una de las más visibles, es que no tienes que hacer el implements del OnDestroy en el component e implementar el ngOnDestroy() { ... } con el consiguiente next y complete del subject que usabas dentro del takeUntil....
De todas formas, lo que está enseñando, si lo hiciera dentro del constructor, ni siquiera le había falta el destroyRef. Se quedaría en algo como: this._contactSvc.getAllContacts().pipe(takeUntilDestroyed()).subscribe(.....); Pero creo que poca gente hace eso en el constructor ;)
Y cuál es la diferencia con el otro normal que es un Subject?
Supongo que una de las más visibles, es que no tienes que hacer el implements del OnDestroy en el component e implementar el ngOnDestroy() { ... } con el consiguiente next y complete del subject que usabas dentro del takeUntil....
De todas formas, lo que está enseñando, si lo hiciera dentro del constructor, ni siquiera le había falta el destroyRef. Se quedaría en algo como:
this._contactSvc.getAllContacts().pipe(takeUntilDestroyed()).subscribe(.....);
Pero creo que poca gente hace eso en el constructor ;)