discord.js-commando RangeError:参数类型“字符串”未注册

Posted

技术标签:

【中文标题】discord.js-commando RangeError:参数类型“字符串”未注册【英文标题】:discord.js-commando RangeError: Argument type "string" isn't registered 【发布时间】:2021-03-21 16:35:48 【问题描述】:

我试图在突击队中禁用默认帮助和 eval 命令,但是,我收到以下错误:

RangeError: Argument type "string" isn't registered.

我注册discord.js-commando为客户

这是错误的代码

client.registry.registerDefaultCommands(
    help: false,
    eval: false,
);

【问题讨论】:

该错误与默认命令无关,问题在于您在某些命令中注册的某些参数类型。错误:github.com/discordjs/Commando/blob/…,类参数 【参考方案1】:

我查看了文件并发现了问题所在。 问题是您只注册了默认命令,但您还需要注册默认类型和默认组。 添加这几行代码来解决问题:

    .registerDefaultTypes()
    .registerDefaultGroups()
    .registerDefaultCommands(
      // Put commands you dont want to use here
)

阅读更多关于该问题的信息here:https://discord.js.org/#/docs/commando/master/class/CommandoRegistry?scrollTo=registerDefaultCommands

【讨论】:

现在我得到Error: An argument type with the ID "string" is already registered.

以上是关于discord.js-commando RangeError:参数类型“字符串”未注册的主要内容,如果未能解决你的问题,请参考以下文章

Discord.js 和 discord.js-commando 防止命令在特定通道中运行

discord.js-commando TypeError:RichEmbed 不是构造函数

广播所有命令不自动删除广播 - Discord.js-Commando

Discord.js-commando 节流不起作用

具有不同响应的命令上的 discord.js-commando 参数

discord.js-commando RangeError:参数类型“字符串”未注册