我正在为我的朋友编写一个Discord机器人,当我为他制作彩虹色角色时,我停了一个大错误。
首先,这是我的代码:
var guild = client.guilds.get("493432486148177923")
var role = guild.roles.get("501752627709870080");
var role2 = guild.roles.get("493436150019784704");
setInterval(() => {
role.setColor([Math.floor(Math.random() * 255), Math.floor(Math.random() * 255), Math.floor(Math.random() * 255)])
role2.setColor([Math.floor(Math.random() * 255), Math.floor(Math.random() * 255), Math.floor(Math.random() * 255)])
}, 8000)
所有操作都停止在guild
变量上。它给了我null / undefined,并且在转到guild.roles.get()
时导致程序崩溃。我尝试使用.find()
而不是.get()
来找到行会,但这还是行不通的。
答案 0 :(得分:11)
我不知道您是否还在寻找答案,但我遇到了同样的问题。经过一番调查,我想出了一个解决方案:
var server = client.guilds.cache.get(serverID);
这对我有用。希望对您有帮助!
答案 1 :(得分:0)
我无法给出为什么发生 的原因,但是我正在使用的当前方法是:
var g = client.guilds.get("GUILD-ID");
var c = g.channels.get("CHANNEL-ID");
或一行:
var c = client.guilds.get("GUILD-ID").channels.get("CHANNEL-ID");
答案 2 :(得分:0)
只是改变
client.guilds.get("493432486148177923")
与
client.guilds.get('493432486148177923')