package.jsonのdependenciesにローカルファイルを指定する
依存するプロジェクトを同時に修正している場合どうしていますか?
自分はこれまでは使いたいプロジェクト側(Aとします)のpackage.jsonに、対象プロジェクト(Bとします)のパスを直接書いていました。
{ … "dependencies": { "test": "../workspace/test" } … }
しかしこれだとBを修正するたびに、Aでnpm installして格納したnode_modules配下のBをいちいち更新しなければならなかったので微妙だなぁと思っていました。
なので下記方法に変更しました。
まずpackage.jsonを修正します。バージョンを直接指定します。
{ … "dependencies": { "test": "1.0.0" } … }
その後に、npm linkコマンドでシンボリックリンクを貼ります。
$ npm link ../workspace/test $ ls -la node_modules/test lrwxr-xr-x 1 hoge fuga Users 49 2 5 15:05 node_modules/test/ -> ../workspace/test $ npm install
シンボリックリンクなのでBに対する修正はそのまま反映されます。
package.jsonはそのままでした。
{ … "dependencies": { "test": "1.0.0" }, … }
これでおーけーね♡