尝试制作Discord机器人,但找不到模块

时间:2020-07-12 23:31:54

标签: javascript node.js npm discord.js

Image depicts my index.js properties 我一直在尝试重新编码我之前迷路的Discord机器人。我按照THIS教程讲解了这个点,我已经做过一个不同的机器人。它像魅力一样运作。我说的是运行命令npm run dev来启动机器人的时刻。 预期结果:Discord机器人成功启动 实际结果:

PS C:\Users\User\Desktop\beans> npm run dev

┌───────────────────────────────────────────────────────────┐
│                  npm update check failed                  │
│            Try running with sudo or get access            │
│           to the local update config store via            │
│ sudo chown -R $USER:$(id -gn $USER) C:\Users\User\.config │
└───────────────────────────────────────────────────────────┘

> beans@1.0.0 dev C:\Users\User\Desktop\beans
> nodemon index.js

[nodemon] 2.0.4
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `node index.js index.js`
internal/modules/cjs/loader.js:969
  throw err;
  ^

Error: Cannot find module 'C:\Users\User\Desktop\beans\index.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:966:15)
    at Function.Module._load (internal/modules/cjs/loader.js:842: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: []
}
[nodemon] app crashed - waiting for file changes before starting...

那么,这就是我的package.json:

{
  "name": "beans",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "discord.js": "^12.2.0"
  },
  "devDependencies": {
    "nodemon": "^2.0.4"
  }
}

这是我的index.js,减去了bot令牌:

const Discord = require("discord.js")
const client = new Discord.Client()
client.on("ready", () => {
  console.log(`Logged in as ${client.user.tag}!`)
})
client.on("message", msg => {
  if (msg.content === "ping") {
    msg.reply("Pong!")
  }
})
client.login("mytoken")

我尝试运行npm clear cache,,但没有执行任何操作。我尝试完全重新创建文件,也什么也不做。如果有帮助,我在Windows 10上。这是我的第一个问题,因此如果我没有提供足够的信息,我深表歉意,但我希望这一点能清楚地体现出来。

编辑:我已经注意到,与上次启动其他机器人相比,终端/ Powershell的状态为starting node index.js index.js而不是上次的starting node index.js。我想我可能会看到错误,尽管我不知道如何解决。

4 个答案:

答案 0 :(得分:0)

该错误表明它找不到index.js,也许它的名称错误或在错误的目录中。

答案 1 :(得分:0)

我运行了您的代码,结果如下。令牌问题是预料之中的,但确实找到了模块

C:\git\beans
> npm run dev

> beans@1.0.0 dev C:\git\beans
> nodemon index.js

[nodemon] 2.0.4
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `node index.js`
(node:47012) UnhandledPromiseRejectionWarning: Error [TOKEN_INVALID]: An invalid token was provided.

答案 2 :(得分:0)

可能是您的NODE_PATH环境变量搞砸了。

尝试以下操作,查看是否在其中进行了设置。 c:\ git \ beans

设置NODE_PATH

答案 3 :(得分:0)

错误警报...尽管仅显示index.js,我的index.js还是决定另存为index.js.txt。我切换了记事本程序,它的工作就像一个魅力。