我決定寫一個代碼來禁止陣列中的每個人,但是在使用命令時,機器人給出了錯誤
message.guild.members.cache.get(element).then(m => m.ban())
^
TypeError: message.guild.members.cache.get(...).then is not a function
我的代碼:
const amo = await db.get(`abig_${message.guild.id}`)
amo.forEach(element => {
message.guild.members.cache.get(element).then(m => m.ban())
})
在陣列中只有 id
uj5u.com熱心網友回復:
通過 using 獲取成員時cache.get(),它不會回傳Promise導致此錯誤的 a 。你可以通過使用它來獲得價值,然后你可以禁止它。禁止成員確實會回傳 a Promise,因此您需要相應地處理它。您更正的代碼將是這樣的:
const amo = await db.get(`abig_${message.guild.id}`)
amo.forEach((element) => {
const user = message.guild.members.cache.get(element)
if (!user) return message.channel.send('The user does not exist')
user.ban().then(member => console.log(`Banned ${member.user.tag}!`))
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/489632.html
標籤:javascript 不和谐.js
