helen's blog

ずっとおもしろいことしてたいな。

npm installしたときに出てるやつ

赤い文字で表示されるからエラーに見えて気持ち悪いのできれいにした

UNMET DEPENDENCY

原因:依存関係がインストールされてない

UNMET DEPENDENCY react@^0.12.2

$ npm install react --save

他にもreactでエラーしてたので
バージョン指定なしでインストールしてみたら15.1.0が入った

UNMET PEER DEPENDENCY

原因:プロジェクトに必要なパッケージがインストールされてない
今回はmaterial-uiで必要なパッケージがなくて怒られた

そのまま $ npm install react-dom@^15.0.0 って書いたらだめだった
react-dom@15.0.0が正解
参考:react-dom

npm WARN EPEERINVALID material-ui@0.15.0 requires a peer of react@^15.0.0 but none was installed.

$ npm install react-dom@15.0.0 --save

npm WARN EPEERINVALID

原因:別のパッケージで依存先がインストールされてない

# react-addons-create-fragmentはreact@^15.0.2が必要だけど入ってません
npm WARN EPEERINVALID react-addons-create-fragment@15.0.2 requires a peer of react@^15.0.2 but none was installed.

$npm install react --save

reactのバージョン気にしてなかったけどまあ良いや

WARN EPACKAGEJSON

原因:package.jsonになんらかの記入漏れがある

npm WARN EPACKAGEJSON <project_name>@ No repository field.
npm WARN EPACKAGEJSON <project_name>@ No license field.

下の方にこれが出てたので以下追記

"repository": "<project_name>",
"license": "ISC"

ググるとlicenseはMITとか(BSD)MITとか書いてあるのが見つかるけど
これじゃなきゃまずいっていうのは特になさげで
npmのv3.3.12でinitした時にデフォルトでISCが入ったからこれでいいかなと
この2つが書いてあればとりあえずWARNは消える

いろいろやってごちゃごちゃになった気がしたので抹消して再インストールした

エラーが消えてすっきりしたのとインストール先間違えたりしたので
一旦キャッシュ消してパッケージをきれいにしといた

$ npm cache clean

# 結局ディレクトリ一旦消すほうが掃除になってよかった
$ rm -rf node_modules/
$ npm install

わーいすっきり(⌒▽⌒)
でもまだエラーで動かないぞー(⌒▽⌒)