node.js - 你如何解决这个地雷问题?
问题描述
所以我一直在尝试为我的世界中的机器人制作代码,但是在执行命令时:
node index.js
然后会发生这种情况:
internal/modules/cjs/loader.js:968
throw err;
^
Error: Cannot find module 'C:\Users\monst\Downloads\Serverchat\index.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)
at Function.Module._load (internal/modules/cjs/loader.js:841:27)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
这是代码:
const Discord = require("discord.js");
const mineflayer = require("mineflayer");
const client = new Discord.Client();
let prefix = ".";
let bot = mineflayer.createBot({
version: "1.12.2",
host: "example.org",
username: "email",
password: "password",
})
client.on("ready", async => {
console.log("Bot Online")
})
bot.on("login", async => {
console.log("Ingame Bot Online")
bot.chat("Online!")
})
bot.on("message", message => {
let channel = client.channels.cache.get(742454971450261557)
if (!channel) return;
channel.send(`${message}`)
})
client.login("token")
如果有人可以提供帮助,那对我来说就意味着整个世界!
解决方案
第一件事:
重置您的令牌!
您的机器人令牌就像用户名和密码合二为一。任何获得它的人都可以采取任何行动,就好像他们是你的机器人一样,包括通过它交谈并删除频道和类似的东西。我通过编辑从您的问题中对其进行了编辑,但我强烈建议您立即访问 Discord 门户并重置它。
除此之外,主要问题:
错误写得很清楚。Error: Cannot find module 'C:\Users\monst\Downloads\Serverchat\index.js'
. 这意味着您在该文件夹中没有名为index.js
. 看到它也是一个不和谐的机器人,也许你的意思是node bot.js
?如果不是,您的代码可能位于另一个工作目录中。在命令提示符下将工作目录更改为您cd
放置机器人代码的位置和node_modules
.
另一件事:JavaScript 不能将雪花表示为原始数字 - 精度损失会导致最后几个数字略有变化。因此,discord 库(包括 discord.js)要求您将 ID 作为字符串传递,如下所示:
let channel = client.channels.cache.get("742454971450261557")
推荐阅读
- visual-studio-code - ( Ctrl + / ) 快捷方式在 VSC 中无法正常工作
- sql-server - Calculating age based on a column that has only years in it in SQL Server
- python - 如何将两个对象合并成一个包含两个元素的元组?
- azure - 为 Azure Blockchain Workbench 部署智能合约时出错
- php - PHP 填补数组空洞
- javascript - 如何使用反应导航?
- javascript - 如何使用 CSS 创建可悬停的彩虹?
- c++ - 为什么只有指向函数的指针而不是函数的var?
- android - 未调用Android活动startActivityForResult
- c++ - 如何让while循环与数字生成器一起使用?