我添加了一个东西,如果有人离开,我的机器人会直接发送消息,但现在我一直收到错误消息
I added a thing where my bot will dm if someone leaves but now i just keep getting an error
所以我是编写代码的新手,但遇到了瓶颈。我到处都看过,但无法弄清楚如何让这些命令一起工作。我使用 Visual Studio 代码或 discord.js
无论它叫什么。而且我对编码完全陌生。
这个代码是我唯一能想到的给我发私信的代码
bot.on("guildMemberRemove", member => {
bot.users.get("485655477812723712").send(member + 'has left the
server')
})
bot.on("guildMemberRemove", member => {
bot.users.get("485655477812723712").send(member + 'has left the
server')
}) //.. this will send me a dm informing me that someone left
});
bot.on('message', message=>{
let args = message.content.substring(PREFIX.length).split(" ");
let member = message.mentions.members.first();
switch(args[0]){
//.. these go onto my case '' commands
所以我可以启动我的机器人了。作为测试 运行 我有另一个帐户毫无问题地加入,然后我将该帐户踢出。但是它关闭了机器人说
"TypeError: Cannot read property 'first' of null"
如果帐户离开,也会发生同样的情况。但是,我仍然收到那个人离开的通知。我不知道我应该做什么。请帮忙
据我所知,错误正是您遇到的问题。它试图在空对象上获取 first
。要缓解这种情况,请先尝试检查该对象是否为空。你可以这样做:
//If it is not null
if(message.mentions.members){
let member = message.mentions.members.first();
//Insert the rest of the code here
}
所以我是编写代码的新手,但遇到了瓶颈。我到处都看过,但无法弄清楚如何让这些命令一起工作。我使用 Visual Studio 代码或 discord.js
无论它叫什么。而且我对编码完全陌生。
这个代码是我唯一能想到的给我发私信的代码
bot.on("guildMemberRemove", member => {
bot.users.get("485655477812723712").send(member + 'has left the
server')
})
bot.on("guildMemberRemove", member => {
bot.users.get("485655477812723712").send(member + 'has left the
server')
}) //.. this will send me a dm informing me that someone left
});
bot.on('message', message=>{
let args = message.content.substring(PREFIX.length).split(" ");
let member = message.mentions.members.first();
switch(args[0]){
//.. these go onto my case '' commands
所以我可以启动我的机器人了。作为测试 运行 我有另一个帐户毫无问题地加入,然后我将该帐户踢出。但是它关闭了机器人说
"TypeError: Cannot read property 'first' of null"
如果帐户离开,也会发生同样的情况。但是,我仍然收到那个人离开的通知。我不知道我应该做什么。请帮忙
据我所知,错误正是您遇到的问题。它试图在空对象上获取 first
。要缓解这种情况,请先尝试检查该对象是否为空。你可以这样做:
//If it is not null
if(message.mentions.members){
let member = message.mentions.members.first();
//Insert the rest of the code here
}