160

私はNode.jsを初めて使用します。最初のウェブアプリケーションを構築するために、エクスプレスを学んでみてください。私は最初のサンプルコードで行き詰まり、それを実行するためにいくつかの助けが必要です。この質問を投稿する前に、スタックオーバーフローを検索し、同様の質問をいくつか見つけましたが、それでも修正できませんでした。

Error: Cannot find module 'express'

私はmacos10.8.2を使用しています。を使用してNode.jsをインストールしていnvmます。

node.js: 0.8.20 path to node:    /Users/feelexit/nvm/v0.8.20/bin/node
path to express: /Users/feelexit/nvm/node_modules/express

これが私のサンプルコードです:このファイルは次の場所にあります:

/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js

var express = require('express');
var app = express();
app.get('/', function(req, res){
    res.send('welcome to express');
});
app.listen(3000);

このコマンドを実行しようとするとnode index.js、次のエラーメッセージが表示されます。修正を手伝ってください。

ありがとうございました。

Error: Cannot find module 'express'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:362:17)
    at require (module.js:378:17)
    at Object.<anonymous> (/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js:1:81)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)
feelexits-Mac:node_modules feelexit$ 

chovyの質問に答えるために更新します:

feelexits-Mac:~ feelexit$ npm install
npm ERR! install Couldn't read dependencies
npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>

npm ERR! System Darwin 12.2.0
npm ERR! command "/Users/feelexit/nvm/v0.8.20/bin/node" "/Users/feelexit/nvm/v0.8.20/bin/npm" "install"
npm ERR! cwd /Users/feelexit
npm ERR! node -v v0.8.20
npm ERR! npm -v 1.2.11
npm ERR! path /Users/feelexit/package.json
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/feelexit/npm-debug.log
npm ERR! not ok code 0
4

20 に答える 20

214

それは言う

Cannot find module 'express'

エクスプレスをインストールしていますか?そうでない場合は、これを実行します。

npm install express

プログラムを再度実行します。

于 2013-07-18T11:03:33.207 に答える
13

アプリディレクトリ内から npm install すると、必要なものがすべてインストールされるため、問題が修正されます

于 2013-11-30T20:19:43.333 に答える
5

ここで古いスレッドを掘り下げますが、これと同じエラーが発生し、NodeApp が存在するディレクトリに移動して実行することで解決しましたnpm install -d

于 2013-11-23T02:20:29.990 に答える
3

このシナリオでは、プログラムを実行するそれぞれのフォルダーの cmd プロンプトを使用して npm install express コマンドを実行します。例 F:\nodeSample にある Express モジュール プログラム server.js を実行したいとします。したがって、その特定のフォルダーで「npm install express」を実行してから、server.js を実行します。

于 2016-08-26T00:11:38.280 に答える
3

Express モジュールがプロジェクトとは別のディレクトリにある。require()ローカルにしようとしているので、それがおそらく問題です。Express モジュールを/Users/feelexit/nvm/node_modules/expressから/Users/feelexit/WebstormProjects/learnnode/node_modules/expressに移動してみてください。この情報は、node_module ファイル構造に関する詳細を提供します。

于 2013-02-19T13:06:18.933 に答える
1

npm install express body-parser cookie-parser multer --saveこの問題を解決するには、ソース コードの nodejs ファイルと同じディレクトリでコマンドを実行します。P/s: コマンドを実行した後にディレクトリを確認して、詳細を理解してください!

于 2016-08-22T15:48:31.157 に答える
0

これは、Colt Steele の Web 開発コースのコースワークだと思います...なぜ私もそのエラーになってしまったのかについて、同じ答えを探していました..Colt はそうは言いませんが、node_module フォルダーを取得して移動します作業している新しいフォルダーに...それが私にとってはうまくいきました。

于 2016-07-25T00:26:14.570 に答える