问题描述
我遇到了这个完全出乎意料的问题:安装 dotenv 后,每当我运行 npm start
时,我都会收到错误 Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'body-parser' imported from
。在安装 dotenv 之前,一切正常。我应该重新安装 body-parser 吗?
这些是被划掉的模块(可能已删除):
更准确地说,这是我在运行 npm start
后得到的:
internalBinding('errors').triggeruncaughtException(
^
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'body-parser' imported from C:\Users\Lenovo\desktop\projects\posts\server\index.js
at packageResolve (internal/modules/esm/resolve.js:674:9)
at moduleResolve (internal/modules/esm/resolve.js:715:14)
at Loader.defaultResolve [as _resolve] (internal/modules/esm/resolve.js:808:11)
at Loader.resolve (internal/modules/esm/loader.js:82:40)
at Loader.getModuleJob (internal/modules/esm/loader.js:226:28)
at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:51:40)
at link (internal/modules/esm/module_job.js:50:36) {
code: 'ERR_MODULE_NOT_FOUND'
}
对我该怎么做有什么建议吗?
解决方法
删除 node_modules
文件夹并运行 npm install
node_modules
由 npm 管理,所以让它完成它的工作。如果您错过了该文件夹,请将其删除并使用 npm install
另外,正如上面评论中提到的,你不应该把它提交给版本控制,因为它可以派生自 package.json
。只是不需要更多的存储空间。
请注意,您不再需要安装 body-parser。它已作为 express.json()
和 express.urlencoded()