在Discord.js中,如果你想使用不需要前缀的命令,你可以通过监听消息事件(message
)并检查消息内容来实现。
以下是一个示例代码片段,演示如何在不需要前缀的情况下执行命令:
// 导入 Discord.js
const Discord = require('discord.js');
// 创建一个 Discord 客户端
const client = new Discord.Client();
// 监听消息事件
client.on('message', (message) => {
// 检查消息是否不是机器人发送的,以及是否以特定的命令开始
if (!message.author.bot && message.content.startsWith('!')) {
// 获取命令参数
const args = message.content.slice(1).trim().split(/ +/g);
// 获取命令名称
const command = args.shift().toLowerCase();
// 检查命令名称,并执行相应的操作
if (command === 'hello') {
message.channel.send('Hello, world!');
} else if (command === 'ping') {
message.channel.send('Pong!');
}
// 可以继续添加更多的命令
}
});
// 登录到 Discord
client.login('YOUR_BOT_TOKEN');
在上面的示例中,我们监听了message
事件,并通过检查消息内容来确定是否执行命令。我们还使用startsWith
方法来检查消息是否以!
开头,表示是一个命令。
在命令部分,我们使用slice
方法和trim
方法来去除前缀和多余的空格,并使用split
方法将消息内容拆分为参数数组。然后,我们获取命令名称,将其转换为小写,并使用条件语句执行相应的操作。
你可以根据自己的需求添加更多的命令和操作。记得替换YOUR_BOT_TOKEN
为你的机器人的令牌。