title: Combine two or more (boolean) observables on single ngIf using async pipe
body: <p>Without observables I can write the following line in the HTML template:</p>
  
  <pre><code>&lt;div *ngIf="(myVarA || myVarB) &amp;&amp; myVarC !== x"&gt;&lt;/div&gt;
  </code></pre>
  
  <p>How do I translate this line if all <code>myVar</code> variables are now actually observables?</p>
  
  <pre><code>&lt;div *ngIf="((myVarA | async) || (myVarB | async)) &amp;&amp; (myVarC | async) !== x"&gt;
  </code></pre>
  
  <p>does not work.</p>
  
  <p>In another question (<a href="https://stackoverflow.com/questions/44855599/putting-two-async-subscriptions-in-one-angular-ngif-statement">Putting two async subscriptions in one Angular *ngIf statement</a>) the possibility to combine two or more observables into one ngIf can be achieved like</p>
  
  <pre><code>&lt;div *ngIf="{ a: myVarA | async, b: myVarB | async } as result"&gt;&lt;/div&gt;
  </code></pre>
  
  <p>However, I do not see the possibility to use any boolean operators (or any operators for that matter) on the expression that is then being used to evaluate the ngIf.</p>
  
  <p>How can I tackle this issue? Please note, all my Observables use a BehaviorSubject underneath. I think essentially what I want is to use the <code>combineLatest</code> operator inside the template.</p>
  
  <p>Bonus: Is there any way to extract the single value of myVarA if the whole expression evaluates to true for later use in the template (as in <code>myVarA | async as varA</code>)?</p>