![649972736f5ba919494465.png](https://habrastorage.org/webt/64/99/72/649972736f5ba919494465.png)
Очень просто - в чем просчет -> при каждом срабатывании search, предыдущая подписка остается. Либо сделать ее завершение через оператор first(), take(1); либо - как делал я в своих продуктах -> смапить результат после switchMap и выдать его в верстку через async пайп (естественно подписки в методе search не должно быть) или в консоль через tap() оператор