Я бы использовал Обещание , а не Наблюдаемый. Он является родным, и вы можете получить с ним то же самое:
let myPromise = new Promise((resolve, reject) => {
// we do something
if(/* an error has occured */) {
// we don't want to return in the then function if there is an error.
reject(theError);
}
let valueToReturn = "we want to return this from the promise";
resolve(valueToReturn);
});
myPromise.then((data) => {
//the async process is done
console.log(data) // <-- "we want to return this from the promise"
}).catch((error) => {
// we print the error if there is one.
console.error(error);
});
Конечно, вы можете использовать некоторые замечательные функции с Observable, такие как pipe
, но если вам это не нужно, вы неДля этого нужна совершенно новая библиотека.