1. 读错误信息!
请仔细阅读错误信息。
第二部分的第一行说:
Error: Cannot find module 'C:\Users\User\Desktop\NodeJsProject\app.js'
因此,首先要检查的是:文件是否存在?
在Windows上,打开命令提示符(WinKey+r,输入cmd
,按Enter)。运行:
dir C:\Users\User\Desktop\NodeJsProject\app.js
如果响应是 -
系统找不到指定的路径。 -
或者 -
文件未找到 - 那么你就知道
该文件不存在。
同样,在Linux/Unix上(在我这种情况下是
Windows上的MSYS2),运行:
$ ls "C:\Users\User\Desktop\NodeJsProject\app.js"
ls: cannot access 'C:\Users\User\Desktop\NodeJsProject\app.js': No such file or directory
因此,如果在Linux上出现没有这样的文件或目录,那么你就知道该文件不存在。
2. 尝试运行npm install
如果上面第1部分没有解决您的问题,请尝试运行npm install
,然后运行npm start
。
如果以上方法都无法解决您的问题,我的最后建议是:
- 删除
node_modules
目录,
- 删除
package-lock.json
文件,
- 运行
npm install
,
- 运行
npm start
。
4. 如果错误发生在VS Code中
注意:
在Visual Studio Code中进行调试时,错误可能会出现无法预料的原因。
如果您在VS Code中遇到错误,请查看this answer是否有帮助。
假设您已经在计算机上安装了Node.js。
如果没有,请下载并安装。
错误消息很容易重现。
安装完Node.js后,打开命令行,并运行:
$ node thisFileDoesNotExist.js
node:internal/modules/cjs/loader:1078
throw err;
^
Error: Cannot find module 'C:\thisFileDoesNotExist.js'
[90m at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)[39m
[90m at Module._load (node:internal/modules/cjs/loader:920:27)[39m
[90m at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)[39m
[90m at node:internal/main/run_main_module:23:47[39m {
code: [32m'MODULE_NOT_FOUND'[39m,
requireStack: []
}
Node.js v18.14.2
6. 如何在没有错误的情况下运行node <someFile.js>
要在终端中无错误地运行Node.js,在Windows命令行中运行:
echo console.log('\nHello world!')> hello.js
node hello.js
在 Linux 终端中,尝试输入:
echo "console.log('\nHello world\!\n')"> hello.js
node hello.js
在这两种情况下,都应该期望响应为:
Hello world!
如果您刪除了
hello.js
,然後運行
node hello.js
,您應該再次收到您問的錯誤。
參考資料
node
时对_不存在的文件_进行操作。(!) -- 请考虑阅读 https://dev59.com/DlQJ5IYBdhLWcg3wlm7B。 - Henkenvm run
而不是npm run
,也可能会看到此错误。 - Gayan Weerakuttinpm run serve:ssr
的dist文件夹时,我遇到了这个错误。为什么dist文件夹依赖于node_module? - Santosh