【发布时间】:2020-06-18 23:04:48
【问题描述】:
UPD:感谢@Tenclea 解决了问题。问题在于频道创建功能。正确的用法是message.guild.channels.create();!
我遇到了一个关于在执行命令!w 时创建文本通道的问题。问题是,当我尝试 let USER = (message.mentions.members.first()).username; 时,它会执行 undefined 并且 message.member.send() 也无法按预期工作。
附: [关于代码的信息] 该命令不仅创建了一个新的文本频道,该频道仅供命令的执行者和提及的用户使用,而且还会向其他频道 (message.channel.send();) 发送欢迎消息,并向提及的用户发送 DM (return message.member.send();)。
这是代码。提前致谢!
else if (message.content.startsWith(`${prefix}w`)) {
if (message.member.hasPermission('KICK_MEMBERS')) {
let random = ["test1", "test2", "test3"];
var channelname = random[Math.floor(Math.random() * random.length)];
let member = message.mentions.members.first();
let USER = (message.mentions.members.first()).username;
const channel = bot.channels.cache.get('722892241416355940');
(async() => {
message.delete();
message.guild.createChannel(`${channelname} ${USER}`, {
type: 'text',
parent: '550691726587723786',
permissionOverwrites: [{
id: message.guild.id,
deny: ['VIEW_CHANNEL', 'SEND_MESSAGES'],
}, {
id: message.member.id,
allow: ['VIEW_CHANNEL', 'SEND_MESSAGES'],
}, {
id: message.author.id,
allow: ['VIEW_CHANNEL', 'SEND_MESSAGES']
}]
});
message.channel.send(`:wave: we got a newcomer - <@${message.member.id}> ! Welcome!`);
return message.member.send({
embed: {
color: 1437003,
title: ":wave: Hello!",
description: `Welcome to the server!`,
footer: {
text: "Issue !help for more instructions"
}
}
})
});
} else {
return message.reply(' something went wrong!')
}
}
【问题讨论】:
标签: javascript node.js discord.js