Discord Bot发布频道链接

时间:2020-04-01 22:51:45

标签: bots discord discord.js

这是我到目前为止所能完成的。我正在尝试在邮件末尾添加#channel-name-link。

bot.on('guildMemberAdd', member => {
    const welcome = member.guild.channels.cache.find(channel => channel.name === "on-the-leash");
    if (!welcome) return;
    welcome.send("Welcome " + member.toString() + "more message here!!" + message.guild.channels.cache.get('channelID').toString());
});

现在,我收到一条错误消息,提示未定义消息。我是node.js的新手。我习惯使用PowerShell和Bash。我已经用Java和C ++编程,但是自从我对它们做任何事情以来已经过去了一年或两年。我感谢所有帮助。

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:2)

您是否使用discord.js v11或v12? 您是要使用其ID来获取频道还是要使用其名称来查找它?

编辑:

.cache之后添加message.guild.channels,可以解决您的问题

您的解决方案将是:

welcome.send("Welcome " + member.toString() + "more message here" + message.guild.channels.cache.find(channel => channel.name === "rules" ).toString());

OR

welcome.send("Welcome " + member.toString() + "more message here" + message.guild.channels.cache.get("channelID").toString());

答案 1 :(得分:0)

感谢您的帮助@Syntle,您将我带到了我需要去的地方

bot.on('guildMemberAdd', member => {
    const welcome = member.guild.channels.cache.find(channel => channel.name === "on-the-leash");
    const channel = member.guild.channels.cache.get('#ChannelID#').toString();
    if (!welcome) return;
    welcome.send("Welcome " + member.toString() + "More Message Here" + channel);
});