簡體   English   中英

Discord.js v12 Covid Stats 命令

[英]Discord.js v12 Covid Stats command

所以基本上我有一個 covid 命令,它可以顯示統計數據並且可以完美運行。盡管如此。 每當您說一些不是真實文本的內容時,例如“covid ejdetj”,它都會不停地給出錯誤。 我來到這里是因為我不知道如何捕捉錯誤,所以如果有人說“covid kfgk”,它會發回一條消息“不能這樣做”,代碼如下。

client.on('message', async message =>{
  if(message.content.toLowerCase() === prefix + "covid all") {
    const coronaEmbed = new Discord.MessageEmbed()
    const data = await api.all()
    coronaEmbed.setColor('#00B2B2')
    .setTitle("🌐 Global Cases")
    .setDescription("Number of cases may differ from other sources")
    .addField("Cases", data.cases, true)
    .addField("Active", data.active, true)
    .addField("Cases Today", data.todayCases, true)
    .addField("Critical Cases", data.critical, true)
    .addField("Deaths", data.deaths, true)
    .addField("Recovered", data.recovered, true)
    .setFooter(`Requested by ${message.author.tag}`, message.author.displayAvatarURL())
    .setTimestamp()
    message.channel.send(coronaEmbed);
    
  } else if(message.content.toLowerCase().startsWith(prefix + "covid") && message.content.toLowerCase() !== prefix + "covid all") {
    const countrycovid = message.content.slice(prefix.length).split(' ')
    const countrydata = await api.countries({country: countrycovid})
    const countryEmbed = new Discord.MessageEmbed()
    .setColor('#00B2B2')
    .setTitle(`${countrycovid[1]} cases`).setThumbnail(countrydata.countryInfo.flag)
    .setDescription("Number of cases may differ from other sources")
    .addField("Cases", countrydata.cases, true)
    .addField("Active", countrydata.active, true)
    .addField("Cases Today", countrydata.todayCases, true)
    .addField("Critical Cases", countrydata.critical, true)
    .addField("Deaths", countrydata.deaths, true)
    .addField("Recovered", countrydata.recovered, true)
    .setFooter(`Requested by ${message.author.tag}`, message.author.displayAvatarURL())
    .setTimestamp()
    message.channel.send(countryEmbed);
} else {
  if(message.content.toLowerCase() === prefix + "help covid all") {
    const newEmbed = new Discord.MessageEmbed()
    .setColor('#00B2B2')
    .setTitle('**Covid All Help**')
    newEmbed.setDescription('This command sends you an executor of the global corona stats.')
    .setFooter(`Requested by ${message.author.tag}`, message.author.displayAvatarURL())
    .setTimestamp();
    message.channel.send(newEmbed);
  
} else {
  if(message.content.toLowerCase() === prefix + "help covid country") {
    const newEmbed = new Discord.MessageEmbed()
    .setColor('#00B2B2')
    .setTitle('**Covid Country Help**')
    newEmbed.setDescription('This command sends you an executor of the corona stats in countries around the world.')
    .setFooter(`Requested by ${message.author.tag}`, message.author.displayAvatarURL())
    .setTimestamp();
    message.channel.send(newEmbed)
  }
}}})

const countrydata = await api.countries({country: countrycovid})上使用 trycatch 語句!

它看起來像這樣:

try {
  const countrydata = await api.countries({country: countrycovid})
} catch (err) {
  message.reply("Can't do this");
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM