リンク

別に開発しているパッケージを手っ取り早く現在のパッケージで使えるようにします。monorepo の開発プロジェクトを別々にしているような感じです。

yarn link <package-name>とすることで、現在のパッケージのnode_modules/<package-name>へのシンボリックリンクを置きます。例えばローカルにしかない開発中のplus-oneを今のプロジェクトに持ってきたい場合は、plus-one側のルートで

yarn link

と実行します。これでyarn link <package-name><package-name>に指定可能なリストに登録されます。

あとは、現在のプロジェクトのルートで、

yarn link plus-one

としてあげれば完了です。

const plusOne = require('plus-one');

plusOne(1);

うまくリンクできない場合

package.jsonの必須項目の漏れがあると、うまくリンクできない場合がありました。僕の場合はversionを設定し忘れていた為に、binがうまくリンクされずしばらく悩みました。