Javascript Discord.js-通过DM添加角色的用户

Javascript Discord.js-通过DM添加角色的用户,javascript,discord.js,Javascript,Discord.js,我想向角色添加用户时遇到问题 我的代码: console.log(client.guild.roles.cache.get('720257839259451393'); 我从机器人那里得到: TypeError:无法读取未定义的属性“角色” 应请求。_回调(/home/DiscordBot/main.js:127:62) at Request.self.callback(/home/DiscordBot/node_modules/Request/Request.js:185:22) at Re

我想向角色添加用户时遇到问题

我的代码:

console.log(client.guild.roles.cache.get('720257839259451393');
我从机器人那里得到:

TypeError:无法读取未定义的属性“角色”
应请求。_回调(/home/DiscordBot/main.js:127:62)
at Request.self.callback(/home/DiscordBot/node_modules/Request/Request.js:185:22)
at Request.emit(events.js:315:20)
应要求。(/home/DiscordBot/node_modules/request/request.js:1154:10)
at Request.emit(events.js:315:20)
在收到消息时。(/home/DiscordBot/node_modules/request/request.js:1076:12)
在Object.onceWrapper(events.js:421:28)
在IncomingMessage.emit(events.js:327:22)
在endReadableNT(_stream_readable.js:1224:12)
在处理和拒绝时(内部/process/task_queues.js:84:21)

该错误表示公会未定义。有人正在机器人的dms中使用该命令。您只需要一个简单的if语句

if(message.guild)
{
//该命令在服务器中使用
}否则
{
//该命令在dms中使用
}

没有
客户端.公会
。这里记录了您客户的属性:请记住,一个机器人/用户可以是多个公会的成员,每个公会都有自己独特的角色集,只能在该公会中应用。如果您在机器人的dm中触发此操作,那么message.guild为空就有意义了。我如何才能为编写bot的用户添加角色这是一个棘手的问题。可能只有一个bot所有者,但该所有者可以在多个行会中。基本上,在我们获得成员添加角色之前,需要应用这些角色的公会。机器人程序仅在一台服务器上。你能给我一段关于
client.guilds.cache.get(GuildID).members.cache.get(UserID).roles…
等的代码吗?GuildID是公会的id,UserID是用户的id。这些id可能最好用字符串表示。