Javascript 强制更新Discord API角色信息(Discord.js)
嘿,我是一个业余JavaScript程序员,我想为我正在开发的机器人制作一个“temp mute”命令。然而,我遇到了一个错误,我不知道如何解决 我的代码中没有具体的错误,但经过数小时的测试,我相信我已经发现了: discord.js在发送命令后立即存储API信息,如角色。问题在于,tempmute命令使用setTimeout()在静音时间到期后执行操作。其中一个操作是检查用户是否已手动取消静音,方法是检查用户是否具有“静音”角色。这就是问题所在。发送命令时存储的数据与实际数据不同,这会导致if语句每次都返回false,即使它应该返回true 我的问题是:有没有简单的方法让数据更新并存储真实数据。 例如: 你从3个苹果和0个橙子开始 该数据存储在API中 当您运行该命令时,该数据将在命令执行期间本地存储在某个位置 然后命令会拿走你的苹果,给你一个橘子 它存储了你原来有多少苹果和桔子供以后使用 5秒钟后,程序将开始把橘子拿走,然后把苹果还给你 但是在它这么做之前,它会检查你的橘子是否已经被其他人拿走,所以它会询问API 但是API说你有3个苹果和0个桔子,而实际上你有0个苹果和1个桔子 所以你没有把你的苹果拿回来Javascript 强制更新Discord API角色信息(Discord.js),javascript,node.js,discord.js,Javascript,Node.js,Discord.js,嘿,我是一个业余JavaScript程序员,我想为我正在开发的机器人制作一个“temp mute”命令。然而,我遇到了一个错误,我不知道如何解决 我的代码中没有具体的错误,但经过数小时的测试,我相信我已经发现了: discord.js在发送命令后立即存储API信息,如角色。问题在于,tempmute命令使用setTimeout()在静音时间到期后执行操作。其中一个操作是检查用户是否已手动取消静音,方法是检查用户是否具有“静音”角色。这就是问题所在。发送命令时存储的数据与实际数据不同,这会导致if
有没有办法让程序更新它的数据并意识到你有一个橙色?要更新API中的最新数据,请等待
.fetch()
。在这种情况下,您希望等待.fetch()
然后访问它的roles属性。(注意这需要在异步函数中进行)谢谢!我只需要将这个强制选项设置为true,就解决了问题。