无法读取未定义的属性(读取 'members')
Cannot read properties of undefined (reading 'members')
我一直在寻找此类错误的各种答案,但我尝试的所有方法要么是错误,要么就是不起作用。
基本上我正在尝试为我的 Discord 服务器制作一个机器人,并有一个存在状态说明我的服务器中有多少成员。我每次都会收到此错误:
name: `${guild.members.filter(member => !member.user.bot).size} users!` ^ TypeError: Cannot read properties of undefined (reading 'members')
我已经检查过公会 ID 是否正确,我没有语法错误等等。
代码如下:
const guild = client.guilds.cache.get("745807908071145564");
client.once("ready", () => {
console.log("Bot is ready!");
setInterval(() => {
client.setPresence({
status: "online",
activity: {
name: `${guild.members.filter(member => !member.user.bot).size} users!`,
type: "WATCHING"
}
})
.catch(console.error);
},5000); // 5 seconds just for testing
});
尝试一下,使用 activity
而不是 presence
,还需要从缓存中获取成员,这是未定义错误的来源。
const guild = client.guilds.cache.get("745807908071145564");
client.once("ready", () => {
console.log("Bot is ready!");
setInterval(() => {
client.user.setActivity({
name: `${guild.members.cache.filter(member => !member.user.bot).size} users!`,
type: "WATCHING"
})
.catch(console.error);
},5000); // 5 seconds just for testing
});
如果你想使用 presence
你也可以这样做
const guild = client.guilds.cache.get("745807908071145564");
client.once("ready", () => {
console.log("Bot is ready!");
setInterval(() => {
client.user.setPresence({
status: 'online',
activity: {
name: `${guild.members.cache.filter(member => !member.user.bot).size} users!`,
type: "WATCHING"
}
})
.catch(console.error);
},5000); // 5 seconds just for testing
});
我一直在寻找此类错误的各种答案,但我尝试的所有方法要么是错误,要么就是不起作用。
基本上我正在尝试为我的 Discord 服务器制作一个机器人,并有一个存在状态说明我的服务器中有多少成员。我每次都会收到此错误:
name: `${guild.members.filter(member => !member.user.bot).size} users!` ^ TypeError: Cannot read properties of undefined (reading 'members')
我已经检查过公会 ID 是否正确,我没有语法错误等等。
代码如下:
const guild = client.guilds.cache.get("745807908071145564");
client.once("ready", () => {
console.log("Bot is ready!");
setInterval(() => {
client.setPresence({
status: "online",
activity: {
name: `${guild.members.filter(member => !member.user.bot).size} users!`,
type: "WATCHING"
}
})
.catch(console.error);
},5000); // 5 seconds just for testing
});
尝试一下,使用 activity
而不是 presence
,还需要从缓存中获取成员,这是未定义错误的来源。
const guild = client.guilds.cache.get("745807908071145564");
client.once("ready", () => {
console.log("Bot is ready!");
setInterval(() => {
client.user.setActivity({
name: `${guild.members.cache.filter(member => !member.user.bot).size} users!`,
type: "WATCHING"
})
.catch(console.error);
},5000); // 5 seconds just for testing
});
如果你想使用 presence
你也可以这样做
const guild = client.guilds.cache.get("745807908071145564");
client.once("ready", () => {
console.log("Bot is ready!");
setInterval(() => {
client.user.setPresence({
status: 'online',
activity: {
name: `${guild.members.cache.filter(member => !member.user.bot).size} users!`,
type: "WATCHING"
}
})
.catch(console.error);
},5000); // 5 seconds just for testing
});