Next.jsで大きめのページを開発しつつ、StorybookやComponentsを作成していた。
ひと段落したタイミングでJestを実行するとエラーが出るようになっていた。
% yarn test
yarn run v1.22.19
$ jest ./src
Error [ERR_REQUIRE_ESM]: require() of ES Module /node_modules/string-width/index.js from /node_modules/cliui/build/index.cjs not supported.
目次
エラーを改善する
Stack Overflowを読んでると、configや、package.jsonの書き換えで対応した、という内容が多かったが、今回の件では、外部パッケージの依存ではと考えて、スマートに対応した。
yarn のキャッシュ削除
先にyarnのキャッシュを削除する。
yarn cache clean
関連するディレクトリ、ファイルを削除
node_modules、yarn.lockを削除します。
パッケージを再インストール
パッケージを再インストールします。
yarn
Summary
以上で、エラーが解消されます。
意図した変更をしていない場合は、まずはクリーンアップしてから他の原因を調査すると良さそうです。