我有一个名为userUpdate.js的不协调.js事件,其参数为client,oldUser, newUser
我试过
var log = client.guilds.channels.find(ch => ch.name.includes('log')) ;
if (!log) return;
if (!log.permissionsFor(client.user).has(["SEND_MESSAGES","EMBED_LINKS"])) return;
但我得到的是通道没有定义
log.send("message here");
由于您试图在公会集合中找到通道,所以您得到了未定义的通道。
对于discord v11版本
let log = client.channels.find(ch => ch.name.includes('log')) ;
if (!log) return;
if (!log.permissionsFor(client.user).has(["SEND_MESSAGES","EMBED_LINKS"])) return;
用于discord v12版本
let log = client.channels.cache.find(ch => ch.name.includes('log')) ;
if (!log) return;
if (!log.permissionsFor(client.user).has(["SEND_MESSAGES","EMBED_LINKS"])) return;
更好地使用的通道ID
let logChannel = client.channels.get("ID")
if (!logChannel) return;
if (!logChannel.permissionsFor(client.user).has(["SEND_MESSAGES","EMBED_LINKS"])) return;
对于v12,将
client.channels.get("ID")
替换为client.channels.cache.get("ID")