首页 > 解决方案 > Node.js“节点”命令不起作用,只是退出

问题描述

我有个问题。几个月前,我在 Node.js 中发现了一个问题:突然间,当我尝试执行“node”命令时,什么也没有发生,它就退出了。(是的,在节点命令之后我确实放了一个 .js 文件)。由于这个问题,我很长一段时间无法编写 Discord 机器人(我正在使用 discord.js 进行编码)。我仍然有这个问题,我想找出为什么会出现这个问题。我放个截图吧。(名称审查): node.js 问题

const Discord = require("discord.js");
const client = new Discord.Client();

client.on("message", async (message) => {
  console.log("\r\nUser sent message: \"" + message.content + "\", from server \"" + message.guild.name + "\" from user " + message.member.user.username + " prepared to be sent at exactly " + message.mentions._client.readyAt + ".\r\n");

if(message.content = "Ping") {
  message.channel.send("Pong!");
}
bot.login("My bot token");

});

这是我的代码。

标签: node.js

解决方案


您的代码的问题是您在收到消息后尝试登录。那是行不通的,因为您需要登录,然后您会收到消息。
这应该有效:

const Discord = require("discord.js");
const client = new Discord.Client();

client.on("message", async (message) => {
  console.log("\r\nUser sent message: \"" + message.content + "\", from server \"" + message.guild.name + "\" from user " + message.member.user.username + " prepared to be sent at exactly " + message.mentions._client.readyAt + ".\r\n");

  if(message.content = "Ping") {
     message.channel.send("Pong!");
  }

});

bot.login("My bot token");

推荐阅读