У меня есть класс со статическими методами, возвращающими обещания. Я могу напечатать в консоли значения, возвращаемые этими промисами, в отдельных строках. Но я хочу напечатать в консоли в одну строку погоду и валюту для данного города (скажем, Лондона). Вывод должен быть таким:
The weather of London is cloudy. The local currency of London is GBP.
Я тоже не могу сделать это с вложенными обещаниями. Как это сделать?
Вот код:
class Provider{
static getWeather(city){
return Promise.resolve(`The weather of ${city} is cloudy.`);
}
static getLocalCurrency(city){
return Promise.resolve(`The local currency of ${city} is GBP`)
}
};
Provider.getWeather(value).then((value)=> console.info(value));
Provider.getLocalCurrency("London").then((value)=> console.info(value));
Вы можете использовать Обещание.все.
class Provider {
static getWeather(city) {
return Promise.resolve(`The weather of ${city} is cloudy.`);
}
static getLocalCurrency(city) {
return Promise.resolve(`The local currency of ${city} is GBP`);
}
}
Promise.all([
Provider.getWeather("london"),
Provider.getLocalCurrency("London")
]).then(([weather, currency]) => {
console.info(`${weather} ${currency}`);
});