Не совсем ясно, что вы пытаетесь сделать здесь, но некоторые предпосылки, которые могут помочь.
Угловые методы жизненного цикла не могут быть прерваны.Они также не будут ждать асинхронных действий.Это просто обратные вызовы, которые будут вызываться в точке углового жизненного цикла.Просить угловой подождать, пока вы сделаете работу в какой-то неизвестной точке, невозможно.Что делать, если действие не завершено?Что происходит с остальной частью поддерева?Вы окажетесь в каком-то странном состоянии, которое сделает недействительной большую часть логики и приложения.
Вместо этого мы используем обнаружение изменений / переменные, чтобы изменить состояние компонента для обработки этих асинхронных действий.Таким образом, вы можете показать индикатор прогресса, используя булеву переменную, пока rpc не вернется, а затем показать результаты, щелкнув по переменной.