类型错误:无法读取未定义的属性“缓存”

时间:2021-02-06 06:18:16

标签: javascript node.js discord discord.js

我需要有关“TypeError:无法读取未定义的属性‘缓存’”方面的帮助。

            let members = guild.members.cache
                .filter(function (member) {
                    return member.user.bot === false && member.user.id != member.guild.ownerID;
                })
                .map(function (member) {
                    return { id: member.user.id, nickname: member.nickname, member: member };
                });

TypeError:无法在异步客户端的 processTicksAndRejections (internal/process/task_queues.js:93:5) 处读取 /root/isac/sachi.js:251:33 处未定义的属性“缓存”。 (/root/isac/sachi.js:248:7)

2 个答案:

答案 0 :(得分:0)

如果不了解问题的更多信息,例如您正在使用的其他软件包和其余代码,则很难完全回答问题。

通过查看您提供的代码,当您阅读错误消息时,答案就在那里。

items.addAll(it?.classes?.filterNotNull()?: arrayListOf())

缓存是 "TypeError: Cannot read property 'cache' of undefined"

的一个属性

并且没有这样的属性叫做guild.members,因为在cache中没有members这样的对象

因为没有像 guild 这样的属性,所以它是 members 并且您不能在未定义的对象中读取名为 undefined 的属性。

我建议您检查 cache 中返回的内容并查看是否有 guild 对象

members

并查看输出。

答案 1 :(得分:0)

定义的let members = []; 删除了 let 中的 let members = message.guild.members.cache.filter(fun...message.

前面添加了 guild.members.cache.filter(functi...

因为公会不是我的公会,所以我问的不是我的。