我正在尝试在成员加入时向消息发布渠道发送消息。如果我不使用welcomeChannel
作为const并在函数中定义它,则此方法有效,但是我不想这样做。
const Discord = require('discord.js');
const bot = new Discord.Client();
bot.login('*****************************************');
const welcomeChannel = bot.channels.get("name", "annoucements") // also tried .find here
bot.on('guildMemberAdd', member => {
if (welcomeChannel) {
welcomeChannel.send(member + ', welcome to the server.');
}
});
最佳答案
discord.js的登录方法是异步的,这意味着当您定义该常量时,该漫游器尚未登录。如果漫游器未登录,则找不到任何频道。保留本地定义的常量,或者使其为全局let
并在客户端对象发出ready事件时进行分配。
关于javascript - Discord机器人没有在加入的成员上发送消息?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51758730/