let playlistList = db.get("server").find({"id": msg.guild.id}).get("playlists").value();
let PlaylistsEmbed = new Discord.MessageEmbed()
playlistList.forEach(playlist =>{
Youtube.getPlaylist(playlist.url).then(result => {
PlaylistsEmbed.addField(`"**${playlist.name}**"`, result.title);
}).catch(()=>{
Youtube.getVideo(playlist.url).then(video => {
PlaylistsEmbed.addField(`"**${playlist.name}**"`, video.title);
}).catch(()=>{
msg.channel.send("Invalid URL!");
})
})
});
msg.channel.send({embed: PlaylistsEmbed});
}
Как я могу выполнить обещание перед вызовом msg.channel.send({embed: PlaylistsEmbed});
?
PlaylistsEmbed.addField(`"**${playlist.name}**"`, result.title);
похоже, не работает, если он вызывается внутри обещания.
Я попытался поместить вокруг него новый Promise (), но я не могу заставить его работать из-за forEach, если я разрешаю его внутри forEach, он добавляет только одну запись.