[英]Having trouble with this code. Discord purge command in js
我一直在研究一個 Discord 機器人作為一個小實驗(因為我是編碼新手)。 事實證明我遇到了這段代碼的問題:
// delete from 2-100.
const deleteCount = parseInt(args[0], 10);
if(!deleteCount){
return message.reply("Un numero del 2-100"); //"a number from 2-100"
}
const fetched = await message.channel.fetchMessages({limit: deleteCount});
message.channel.bulkDelete(fetched)
.catch(error => message.reply(`Error: ${error}`)) }
這段代碼確實有效:它會清除上述數量的消息,並在僅給出 !purge 或 !clear 時發送“輸入 2-100 中的數字”消息。 但是,消息......它也會在我輸入命令時發送!say,或者在機器人踢某人並發送成功踢出的用戶消息之后。 它甚至在給出 !shop 或 !f 時發送(它們不是任何代碼的一部分)。
僅當給出的命令沒有值時,如何讓機器人發送“Un numero del 2-100”?
您應該使用 if 語句來檢查消息是否是命令,這樣您才能讓此代碼僅在它是命令時執行。 例如: if (msg.startsWith(prefix + 'purge') || msg.startsWith(prefix + 'clear') {}
從我看來,無論指定的命令如何,所有這些代碼都會被執行,這就是為什么無論調用什么命令都會輸出該字符串的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.