title: BehaviorSubject .next() is not emitting updated value
body: <p>I just want to apologize for my lack of understanding of RxJS and Observables. I posted a question earlier but it was very poorly worded and I know it wasn't understandable, so after a day I think I can explain my issue better.</p>
  <ol>
  <li>The objective of my code is to grab user input, pass it as an action stream to my data stream, compare the input to my array of bays, if it exists, return that single bay. If it doesn't exist <strong>(This is where I'm struggling)</strong> return an observable that I can call back in my <code>bay.page.ts</code> and check to see if its <code>true</code> or <code>false</code>. If it's <code>false</code> <strong>[Show client side error]</strong>.
  If it's <code>true</code>, navigate forward to the results page.</li>
  <li>My <code>bay-service.ts</code> class contains my Data &amp; Actions streams:</li>
  </ol>
  <pre><code>export class BayServiceService {
    private baysUrl = 'api/bays';
  
    bays$ = this.http.get&lt;Bay[]&gt;(this.baysUrl)
      .pipe(
        tap(data =&gt; console.log('Bays: ', JSON.stringify(data))),
        catchError(this.handleError)
      );
  
    /*--------------------------------------------------------------*/
    // Grab A Single Bay
    private baySelectedSubject = new BehaviorSubject&lt;number&gt;(0);
    baySelectedAction$ = this.baySelectedSubject.asObservable();
  
    invalidBay = new BehaviorSubject&lt;boolean&gt;(false);
  
    selectedBay$ = combineLatest([
      this.bays$,
      this.baySelectedAction$
    ])
      .pipe(
        map(([bays, selectedBayNumber]) =&gt; {
          if (!bays.find(bay =&gt; bay.bayCode === selectedBayNumber)){
            this.invalidBay.next(false);
          } else {
            this.invalidBay.next(true);
            return bays.find(bay =&gt; bay.bayCode === selectedBayNumber);
          }
        }),
        );
  
    selectedBayChanged(selectedBayNumber: number): void {
      this.baySelectedSubject.next(selectedBayNumber);
    }
  </code></pre>
  <p>^ In the above code I use a declarative RxJS approach <code>selectedBay$</code> in which I combine my <code>bay$</code> data stream, and my <code>baySelectedAction$</code> Action Stream (Which contains the user input). I then map them and then compare the user input <code>selectedBayNumber</code> to a single bay number.</p>
  <p><strong>ISSUE:</strong> I am trying to use the Observable -&gt; <code>invalidBay = new BehaviorSubject&lt;boolean&gt;(false);</code> that I created back in my <code>bay-service.ts</code> and check it's result: If it's true, navigate forward. If it's false, show a client side error that it doesn't exist. <strong>However</strong>, If the user enters a valid bay number, I try to change that Observable to <code>true</code> by doing <code>this.invalidBay.next(true);</code> BUT, the observable won't update it's value? The BehaviorObservable stays it's default value of 'false'. So the code is partially working, but not quite.</p>
  <ol start="3">
  <li>This is my <code>onSubmit</code> method in my <code>bay-page.ts</code> where I handle the user input for my action stream. I passed the user input into a method (which is in my <code>bay-service.ts</code> class). Depending on their input, I try to subscribe to the Observable that is &quot;supposedly updated&quot; and go from there. But the Observable is not being updated. Please help.</li>
  </ol>
  <pre class="lang-js prettyprint-override"><code>onSubmit() {
      this.bayService.selectedBayChanged(this.bayForm.get('bayStart').value);
      this.subscription = this.bayService.invalidBay.subscribe(value =&gt; {
          if (value) {
              this.navCtrl.navigateForward([`/results/`]);
          } else {
              this.bayDoesNotExistError = true;
              this.selectedBay = this.bayForm.get('bayStart').value;
              this.vibration.vibrate(500);
              console.log('Vibrating for 3 second...')
          }
      })
  }
  </code></pre>
  <p>Why is the Observable not having it's value updated? Please, my mind hurts and I don't know what else to do.</p>