web-dev-qa-db-ja.com

internal / modules / cjs / loader.js:582 throw err

最近、ExpressでNode.jsを学び始めました。エラーをスローしたエクスプレスルーターを試しました。大きな問題は、これを引き起こした原因と、どうすれば再び回避できるかです。この問題は私を心配させ、node.jsを学ぶことを思いとどまらせます。

これがエラーです。何をする必要がありますか?

internal/modules/cjs/loader.js:582
    throw err;
    ^

Error: Cannot find module 'C:\Users\User\Desktop\NodeJsProject\app.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:580:15)
    at Function.Module._load (internal/modules/cjs/loader.js:506:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:741:12)
    at startup (internal/bootstrap/node.js:285:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)
15

ノードjsで最初に試したときに同じ問題がありました。
同じメインディレクトリにある異なるディレクトリに同じ名前の.jsファイルがあるため、この問題が発生していることに気付きました。
メインプロジェクトフォルダーの外側に別のディレクトリを作成し、.jsファイルを作成しました。
その後、正常に実行されました。
ex- app.js

2
  1. node_modulesディレクトリを削除します
  2. package-lock.jsonファイルを削除します
  3. npm installを実行します
  4. npm startを実行します

OR

rm -rf node_modules package-lock.json && npm install && npm start
12
Terminal

私が助けていたのは、作業していた.jsファイルを新しいフォルダに配置し、そのフォルダをVS Codeにドラッグアンドドロップして(VS Codeで直接ディレクトリを開く)、VS Codeでターミナルを開き、次に、単にnode <filename>.js(または、私の場合はnode index.js)と入力します。

既にシステムにnodeをインストールしていましたが、何らかの理由で、ファイルへの直接パス(つまりnode /desktop/index.js)を入力した場合でも、あなたが言及したエラーが引き続き発生していました。

したがって、デスクトップに新しいフォルダーを作成し、そのフォルダー内に.jsファイルを配置し、VS Code内でそのフォルダーを開き、ターミナルでnode index.jsと入力すると問題が解決しました。

2
HappyHands31

package.json{"npm": <your server code file name>.js})のファイル名を、サーバーコードが実行されているファイルに置き換えます(app.jsmain.jsstart.jsserver.js、またはあなたが拾ったもの)。

1
Kuldeep Sharma