【发布时间】:2019-02-13 07:48:50
【问题描述】:
标题说明了一切。我正在 node.js 中制作一个 Discord 机器人,我试图添加的一部分是 .setup 命令,以使机器人减少对手动更改 client.channels.get().send() 的值的依赖,使其更多将来很容易设置。
无论如何,就我而言,我试图让用户回复一条带有频道提及的消息(例如#welcome),并让机器人返回该 ID 并将其保存到变量中。
目前,我有这个:
function setupChannel() {
client.channels.get(setupChannelID).send('Alright. What channel would you like me to send my reminders to?');
client.on('message', message => {
checkChannel = message.mentions.channels.first().id;
client.channels.get(setupChannelID).send('Ok. I\'ll send my reminders to that channel.');
});
}
message.mentions.channels 返回未定义。
我知道message.mentions.channels.first().id 位在它是用户而不是频道时起作用,是否有不同的方式在消息中获得频道提及?
【问题讨论】:
-
通常
message.mentions.channels.first().id应该可以工作 -
首先,我会检查是否有提及频道,如果是则发送消息,如果没有则什么也不做或任何您想要的
-
@GillesHeinesch 但是,如果您希望在消息中提及多个频道,这不是一个好主意,因为它们不是按提及顺序而是按频道年龄排序的。
标签: javascript discord.js