message.client.guilds.fetch() 不是函数

Lio*_*100 3 javascript node.js discord discord.js

这是我正在处理的代码的相关片段:

message.client.guilds.fetch('ID Here', false).then(guild => message.channel.send(guild.name))
Run Code Online (Sandbox Code Playgroud)

根据 do the discord.jsdocs,这个函数GuildManager#fetch()理论上应该可以工作。但是,我不断收到此错误:

message.client.guilds.fetch is not a function
Run Code Online (Sandbox Code Playgroud)

我什至尝试直接从函数文档中复制和粘贴示例,但它仍然给了我同样的错误。

文档示例

我很难过,任何帮助将不胜感激!

编辑:我应该提到所有其他discord.js fetch方法都可以正常工作,例如:

message.client.guilds.fetch is not a function
Run Code Online (Sandbox Code Playgroud)

编辑 #2:我之前的问题已经解决,我使用了错误版本的discord.js. 但是,我现在收到一个新错误:

message.channel.messages.fetch()
Run Code Online (Sandbox Code Playgroud)

运行时。

Kla*_*con 8

您很可能使用的是过时的discord.js版本。client.guilds被任命为GuildManager为v12.0.0和方法client.guilds.fetch只在最新版本v12.3.0加入。您需要有一个discord.js>= 12.3.0的版本才能使用此方法。

尝试npm ls discord.js检查依赖项中的活动版本。
尝试npm i discord.js@latest强制升级到最新版本。