为什么希罗库找不到时机?



我正在创建一个discordbot并将其托管在heroku上。我安装了moment.js库,但它找不到它,给出了以下错误

2022-03-27T12:41:48.954612+00:00 app[worker.1]: Error: Cannot find module 'moment'
2022-03-27T12:41:48.954612+00:00 app[worker.1]: Require stack:
2022-03-27T12:41:48.954612+00:00 app[worker.1]: - /app/bot.js
2022-03-27T12:41:48.954622+00:00 app[worker.1]:     at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
2022-03-27T12:41:48.954625+00:00 app[worker.1]:     at Function.Module._load (node:internal/modules/cjs/loader:778:27)
2022-03-27T12:41:48.954625+00:00 app[worker.1]:     at Module.require (node:internal/modules/cjs/loader:1005:19)
2022-03-27T12:41:48.954626+00:00 app[worker.1]:     at require (node:internal/modules/cjs/helpers:102:18)
2022-03-27T12:41:48.954626+00:00 app[worker.1]:     at Object.<anonymous> (/app/bot.js:3:16)
2022-03-27T12:41:48.954626+00:00 app[worker.1]:     at Module._compile (node:internal/modules/cjs/loader:1103:14)
2022-03-27T12:41:48.954626+00:00 app[worker.1]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
2022-03-27T12:41:48.954627+00:00 app[worker.1]:     at Module.load (node:internal/modules/cjs/loader:981:32)
2022-03-27T12:41:48.954627+00:00 app[worker.1]:     at Function.Module._load (node:internal/modules/cjs/loader:822:12)
2022-03-27T12:41:48.954627+00:00 app[worker.1]:     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12) {
2022-03-27T12:41:48.954628+00:00 app[worker.1]:   code: 'MODULE_NOT_FOUND',
2022-03-27T12:41:48.954628+00:00 app[worker.1]:   requireStack: [ '/app/bot.js' ]
2022-03-27T12:41:48.954628+00:00 app[worker.1]: }

我的代码

const moment = require('moment');

我该怎么办?

package.json:

{
"name": "freaksland-bot",
"version": "1.0.0",
"description": "",
"main": "bot.js",
"scripts": {
"test": "echo "Error: no test specified" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"@discordjs/voice": "^0.8.0",
"moment.js": "^2.29.1",
"discord.js": "^13.6.0",
"init": "^0.1.2"
}
}

您依赖于moment.js,但正确的包只是moment

您是否手动将其添加到package.json?首先,拆下那条线。

然后添加正确的包:

  • 如果使用的是Yarn,请运行yarn add moment
  • 如果使用的是NPM,请运行npm install moment

这应该在本地安装依赖项,并将其添加到package.json和相关的锁定文件中。提交对这些文件的更改并重新部署。

最新更新