title: Angular RxJS: Do I need to do .takeUntil(this.destroy$) if I'm using async pipe?
body: <p>If I have an element in my template which is using property binding, bound to an observable, using <code>async</code> pipe to ensure it is unsubscribed automatically...then would using <code>takeUntil(this.destroy$)</code> be unnecessary?</p>
  <p>Template snippet:</p>
  <pre><code>&lt;input name=&quot;SomeElement&quot;
      [ngModel]=&quot;boundObservable$ | async&quot;&gt;
  &lt;/input&gt;
  </code></pre>
  <p>Component:</p>
  <pre><code>export class MyComponent implements OnDestroy {
    destroy$: Subject&lt;any&gt; = new Subject&lt;any&gt;();
  
    boundObservable$ = this.sourceObservable$.pipe(
      takeUntil(this.destroy$),
      map(this.transformData)
    );
  
    ngOnDestroy() {
      this.destroy$.next();
      this.destroy$.complete();
    }    
  }
  </code></pre>