Как правильно дернуть observer из другого метода?

Чтобы правильно дернуть наблюдателя (observer) из другого метода в Angular, вам понадобится использовать подходящий подход и API фреймворка.

  1. Создайте новый наблюдатель с помощью оператора new Subject():
import { Subject } from 'rxjs';

const observer = new Subject();
  1. Создайте метод, который будет вызываться из другого метода и передавать данные наблюдателю:
private invokeObserver(data: any) {
  observer.next(data);
}
  1. Подпишитесь на наблюдатель, чтобы получить уведомления о изменениях:
observer.subscribe((data) => {
  // Обработка данных из наблюдателя
});
  1. Генерируйте событие в другом методе, чтобы вызвать наблюдателя:
private someOtherMethod() {
  // ...
  this.invokeObserver(data);
}

Метод next() используется для отправки данных наблюдателям, а subscribe() позволяет подписаться на наблюдатель и получать уведомления о изменениях, переданных с помощью метода next().

Обратите внимание, что в приведенном примере observer объявлен и используется в том же классе как приватное поле. Если вам нужно обратиться к наблюдателю из-за его пределами, вы можете создать сервис с наблюдателем или использовать фичу Dependency Injection.