我已经尝试了很多方法但仍然没有成功...
这是错误:
Error: Invalid string format
at Object.run (/home/runner/discordgame-1/node_modules/@sapphire/shapeshift/dist/index.js:1281:64)
at /home/runner/discordgame-1/node_modules/@sapphire/shapeshift/dist/index.js:113:66
at Array.reduce (<anonymous>)
at StringValidator.parse (/home/runner/discordgame-1/node_modules/@sapphire/shapeshift/dist/index.js:113:29)
at validateName (/home/runner/discordgame-1/node_modules/@discordjs/builders/dist/index.js:885:17)
at MixedClass.setName (/home/runner/discordgame-1/node_modules/@discordjs/builders/dist/index.js:957:5)
at Object.<anonymous> (/home/runner/discordgame-1/commands/ping.js:5:6)
at Module._compile (node:internal/modules/cjs/loader:1101:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
Run Code Online (Sandbox Code Playgroud)
代码:
for (const file of commandFiles) {
const command = require(`${file}`);
commands.push(command.data.toJSON());
client.commands.set(command.data.name, command);
}
Run Code Online (Sandbox Code Playgroud)
${file}const command = require( );肯定有问题。
我第一次使用stackoverflow,因为我真的找不到解决方案。
如果您想了解有关此问题的更多信息,请询问我。
我在研究discordjs时遇到了同样的问题。我试图创建一些不和谐的命令,问题是我在 中为命令选择的名称setName(),我使用的是大写字母:
module.exports = {
data: new SlashCommandBuilder()
.setName('membersQuantity') // the uppercase Q is the problem
.setDescription('members quantity'),
async execute(interaction) {
await interaction.reply('test');
},
};
Run Code Online (Sandbox Code Playgroud)
所以我只是改变了它:
module.exports = {
data: new SlashCommandBuilder()
.setName('membersquantity') //no uppercase characters anymore
.setDescription('members quantity'),
async execute(interaction) {
await interaction.reply('test');
},
};
Run Code Online (Sandbox Code Playgroud)
它解决了我的问题。
斜杠命令的名称中可能有更多不允许的字符,因此我建议始终仅使用小写字符。
| 归档时间: |
|
| 查看次数: |
1704 次 |
| 最近记录: |