node.jsで足りないmoduleをインストールするコマンドをインストールしてみる
参考:【Node.js】足りないモジュールをたったの一行でインストールするコマンド - Qiita
Reactのtutorialをやっていて、server.jsを実行しようとしたら・・・
uraway:react-tutorial uraway$ node server.js module.js:338 throw err; ^ Error: Cannot find module body-parser at Function.Module._resolveFilename (module.js:336:15) at Function.Module._load (module.js:278:25) at Module.require (module.js:365:17) at require (module.js:384:17) at Object.<anonymous> (/Users/uraway/Downloads/react-tutorial/server.js:16:18) at Module._compile (module.js:460:26) at Object.Module._extensions..js (module.js:478:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Function.Module.runMain (module.js:501:10)
module 'body-parser'が見つからないので、エラーが出ました。
そんな時はまず、足りないmoduleをインストールするコマンド’npm-install-missing’をインストールして、
npm install -g npm-install-missing
実行して、足りないmoduleをインストールしてみると、
$ npm-install-missing Package Current Wanted Latest Location body-parser MISSING 1.14.1 1.14.1 react-tutorial express MISSING 4.13.3 4.13.3 react-tutorial
こんな感じで、しっかりとインスールしてくれました。
では、もう一度sever.jsを実行してみます。
$ node server.js Server started: http://localhost:3000/
今度は成功しました。
ただ、READMEにもっといい解決策があるそうです。(読んでなかった)
To use
There are several simple server implementations included. They all serve static files from public/ and handle requests to /api/comments to fetch or add data. Start a server with one of the following:
npm install で必要なmoduleは揃うんですね。READMEはちゃんと読みましょう・・・