Javascript 我的discord机器人不会响应我设置的前缀
基本上,我已经为一个朋友的服务器开发了这个机器人两天了,这样它就可以做他想做的事情了。但我无法让它响应我为它设置的前缀 代码如下:Javascript 我的discord机器人不会响应我设置的前缀,javascript,node.js,discord,discord.js,Javascript,Node.js,Discord,Discord.js,基本上,我已经为一个朋友的服务器开发了这个机器人两天了,这样它就可以做他想做的事情了。但我无法让它响应我为它设置的前缀 代码如下: const Discord=require(“Discord.js”); const client=new Discord.client(); 常量前缀=“$”; client.once(“就绪”,()=>{ log(“机器人正在运行!”); }); client.on(“message”,(message)=>{ if($message.content.start
const Discord=require(“Discord.js”);
const client=new Discord.client();
常量前缀=“$”;
client.once(“就绪”,()=>{
log(“机器人正在运行!”);
});
client.on(“message”,(message)=>{
if($message.content.startWith(前缀)| | message.author.bot)返回;
const args=message.content.slice(prefix.length.split(+/);
const命令=args.shift().toLowerCase();
如果(命令==“测试”){
message.channel.send(“测试!”);
}else if(命令==“youtube测试”){
message.channel.send(“youtube测试!”);
}
});
令牌位于代码的底部,但我没有将其粘贴到这里。您将
消息
称为$message
,它将不起作用,正确的函数名是startsWith()
而不是startWith()
。此外,您可能希望确保消息与前缀不匹配,因此应使用代码>
将其更改为:
if(!message.content.startsWith(prefix) || message.author.bot) return;
除了@Dwosk answer,您的问题是一个打字错误
使用$message
而不是message
如果您没有使用好的解释器/linter,那么什么是非常常见和难以注意的
而且,似乎你的逻辑并不是在做你想做的事情
使用
检查不以前缀开头的消息以中断函数。
if(!message.content.startsWith(prefix)| | message.author.bot)返回代码>
否则,您将发布所有以前缀开头的邮件;)
不要为此感到羞耻,那些打字错误就像试图在你自己的文本中找到语法错误,你会失明
这就是为什么推荐一个好的linter,我建议你试试,它是一个免费的开源IDE,附带一个适合js语言的linter,你可以通过社区扩展来扩展它,给你更好的体验