簡體   English   中英

處理錯誤

[英]Dealing with errors

我希望機器人接收/dm命令,然后將 DM 發送給特定的人。 目標是targetid ,DM 內容是letter 該命令本身有效 - 錯誤捕獲不起作用。 如果我使targetid類似於267或任何其他不可能targetid ,它不會將錯誤 output 作為新消息。

try {
    client.users.fetch(targetid).then((user) => {user.send(letter);})
    message.react("✅")
} catch (err) {
    message.channel.send("❗ Something went wrong! Refer to the error log below.\n\n ``" + err + "``\n(Bot administrator contacted: <@...>)") //Removed my ID
    message.react("❌")
}

我建議使用Promise#catch()而不是普通的 try/catch,因為這就是fetch()返回的內容:

client.users
    .fetch(targetid)
    .then(user => {
        user.send(letter)
        message.react('✅')
    })
    .catch(err => {
        message.channel.send('❗ Something went wrong! Refer to the error log below.\n\n ``' + err + '``\n(Bot administrator contacted: <@...>)') //Removed my ID
        message.react('❌')
    })


你可以在這里閱讀更多相關信息

暫無
暫無

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

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