我正在尝试制作一个简单的 discord.js 机器人

Posted

技术标签:

【中文标题】我正在尝试制作一个简单的 discord.js 机器人【英文标题】:im trying to make a simple discord.js bot 【发布时间】:2021-08-20 17:16:21 【问题描述】:

我正在努力做到这一点,只要你输入:mememe 它就会做出反应:你的昵称现在是:

我当前的代码是

const Discord = require("discord.js");
const client = new discord.client();
client.login(process.env.SECRET);
const embed = new Discord.MessageEmbed()
  .setTitle("This is Embed Title")
  .setDiscription("this is embed discription")
  .setColor("RANDOM")
  .SetFooter("This is Embed Footer");

const nicknames = ["dumbass", "idiot", "op", "man", "power", "docter"];

client.on("ready", () => 
  client.user.setPresence( activity:  name: "brave" , status: "invisible" );
);

client.on("message", (message) => 
  if (message.content === "ding") 
    message.channel.send === "dong";
  
  if (message.content === "embed") 
    message.channel.send(embed);
  
);

if (message.content("mememe")) 
  const index = Math.floor(Math.random() * nicknames.length);
  message.channel.send(nicknames[index]);

但我不知道为什么它不起作用,它显示为错误:解析错误:意外令牌

就是这样,我知道如何解决这个问题

编辑:你们没用

【问题讨论】:

尝试将message.content("mememe") 替换为message.content === "mememe"?以及将message.channel.send === ("dong") 替换为message.channel.send("dong")? 这就是你的全部代码吗?最后缺少)。另外,@Axiumin_ 说了什么。我建议你先熟悉 javascript 语法,网上有很多很棒的教程。 【参考方案1】:

我首先想说:请修正你的缩进(我在下面为你做了。

const Discord = require("discord.js")
const client = new Discord.Client()
client.login(process.env.SECRET)
// const embed = new Discord.MessageEmbed()
    // .setTitle("This is Embed Title")
    // .setDiscription("this is embed discription")
    // .setColor("RANDOM")
    // .SetFooter("This is Embed Footer");

const nicknames = ["dumbass", "idiot" , "op" , "man" , "power" , "docter"]

client.on("ready" , () => 
   client.user.setPresence( activity:  name: "brave", status: "invisible")
)
 


client.on("message" , message => 
    if(message.content === ("ding")) 
        message.channel.send === ("dong")
    

    if(message.content === ("embed")) 
        message.channel.send(embed)
    

    if(message.content === ("mememe")) 
        const index = Math.floor(Math.random() * nicknames.length);
        message.channel.send(nicknames[index])
     
)

问题是您错误地调用了 mememe 命令。上面你使用了 messega.content === "..." 在 mememe 命令中,您使用了 message.content("mememe")。这不起作用。更改它(或复制上面的代码应该可以解决问题。也许对您来说是一个想法。您可以添加一个功能来更改用户昵称而不是发送随机昵称。

【讨论】:

以上是关于我正在尝试制作一个简单的 discord.js 机器人的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法使用 quick.db 制作 discord.js 日志系统

Discord.js,API 调用失败

尝试使用 discord.js 将 client.reply 作为嵌入消息发送时出现问题

我正在 discord.js 中制作自定义动态嵌入帮助命令,如何嵌入命令信息?

Discord.js 用于删除所有不是机器人命令的消息

为啥我的欢迎信息不起作用(discord.js)