gpt4 book ai didi

javascript - 为什么 broadcastEval() 不返回公会的 Angular 色?

转载 作者:搜寻专家 更新时间:2023-11-01 00:48:23 25 4
gpt4 key购买 nike

这是我的代码:

await shardingManager.broadcastEval(`this.guilds.get('352896116812939264')`);

上面的 eval 返回的是:

{ members: {},
channels: {},
roles: {},
presences: {},
deleted: false,
available: true,
id: '352896116812939264',
name: 'LenoxBot™',
...}

我现在的问题是,为什么它不返回 Angular 色、 channel 、成员......


我什至尝试了以下方法,但它也不起作用:

await shardingManager.broadcastEval(`this.guilds.get('352896116812939264').roles`);

(机器人有足够的权限查看所有 Angular 色等)

谢谢!

最佳答案

这里的问题是,在稳定版本中,类似 Guild#roles 的东西还不是 JSON 可序列化的,例如由于循环引用 (guild.roles.first().client),所以 node.js 只返回 {}

相关:https://github.com/discordjs/discord.js/issues/3144

On the development branch, all Discord.js objects are JSON serializable. Unfortunately, that change won't land until v12. ~ appellation

正如那里提到的,您可以使用 discord.js v12,或者您需要自己序列化对象。

关于javascript - 为什么 broadcastEval() 不返回公会的 Angular 色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55663747/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com