webpackで「Module not found: Error: Can't resolve 'fs'」と出てきた時の対処法

エラーいっぱいでつらい

reactを使っていた時に踏んだエラーで、npm webpackしたら大量のエラーが出てきて、その大半がModule not found: Error: Can't resolve 'fs' ( ここの'fs' が 'net' とか 'tls' と表示されていたのもあった)。 とりあえず、 yarn add fs でnot foundなモジュールをインストールしたり、エラーが出ているモジュールを別のバージョンでインストールしたり試行錯誤してもダメだった。 ググってみたりしたけど、ググり力が低いため見つけるのに時間がかかった。

対処法

webpack.config.jsonに「target: 'node'」を追加すればいい。 たったこれだけでした。

原因

node.jsが使われている時は「target: 'node'」を記入しないといけなくて、自分はAPIを叩くライブラリを使っていたのでこのエラーが起きていたみたいですね。 自分はjavascriptしか書いてないと思っててもライブラリでnode.jsが使われていると言う落とし穴があるんですね。

詳しくはこのサイトに書いてます。
https://jlongster.com/Backend-Apps-with-Webpack--Part-I