Closed3

Next.js v11にあげると Module not found: Can't resolve 'fs' がでる

wattanxwattanx

表題の通り。
yarn buildすると、

Module not found: Can't resolve 'fs'

とエラーが出て怒られる。
webpack 5になったからなのか?

wattanxwattanx

2021/10/31 追記

以下の設定は不要。(フロント側のソースからサーバー側で実行されるソースコードを消せばいい)


いろいろ試した結果以下を、next.config.jsに書いてビルドするといけた。
なぜかはわからないので詳しい人教えていただけると幸いです。
Server側のビルドでは設定をfalseにするみたいな感じなのかな。

next.config.js
module.exports = {
  webpack: (config, { isServer }) => {
    if (!isServer) {
      config.resolve.fallback.fs = false;
      config.resolve.fallback.child_process = false;
      config.resolve.fallback.net = false;
      config.resolve.fallback.dns = false;
      config.resolve.fallback.tls = false;
    }
    return config;
  },
};

wattanxwattanx

サーバー側で実行する処理がComponent側にも混ざってたのが原因だった。
(サーバー側で実行されるソースをフロント側のソースに混ぜないように修正することで解決した)

このスクラップは2021/10/24にクローズされました