Я много прочитал, и я понимаю, что мой вопрос может быть дубликатом многих других вопросов, но я не могу найти / понять ни одного из найденных ответов.
Я пытаюсьсоздайте функцию, которая будет возвращать ответ серверной части от асинхронного вызова, а не обещание или наблюдаемое.Я пробовал эти методы, но ни один из них не работает.Пожалуйста, помогите мне понять, как я могу получить ответ, который будет возвращен как переменная.
callQuery() {
return new Promise(resolve => {
this.httpclient.get(MyUrl).subscribe((response) => {
resolve(response);
});
});
}
callQuery() {
return new Promise((resolve, reject) => {
this.httpclient.get(MyUrl).subscribe((response) => {
resolve(response);
});
})['__zone_symbol__value'];
}
async callQuery() {
return await new Promise((resolve, reject) => {
this.httpclient.get(MyUrl).subscribe((response) => {
resolve(response);
});
});
}
Так что console.log(callQuery())
продолжает возвращать объект с именем ZoneAwarePromise
.И внутри этого объекта на самом деле есть ключ с именем __zone_symbol__value
, который содержит мой ответ.Но я не знаю, как получить к нему доступ (например, вторая функция выше не работает, как задумано).