Ваш вопрос не совсем ясен, но я думаю, что понял ваши намерения.
Во-первых, вы должны быть уверены, что myEmitter
является конечным, что означает, что он не будет работать вечно. Например, если myEmitter = interval(1000)
подписка на него никогда не будет завершена, вы не сможете запускать ничего «после».
Предполагая, что myEmitter
является конечным, вы можете просто использовать метод Observable.toPromise
, поскольку ваш код уже работает в функции async
, ваш код будет:
const mA = async () => {
try {
const url = myEmitter.toPromise();
getD(url); // you might need to await this as well
const la=()=>{...};
return la;
}
catch (error) {
throw error;
}
};
Примечание: toPromise
устарело, вы можете узнать больше об этом в здесь сообщение в блоге .