• Feed
  • Explore
  • Ranking
/
/
    React

    CRA(create-react-app)에서 webpack polyfill 설정

    Reactpolyfillcreate-react-appwebpackconfig-overrides.jsreact-scriptpackage.json
    전
    전상욱
    2025.04.10
    ·
    1 min read

    1. 필요한 polyfill 모듈 설치

    npm i react-app-rewired crypto-browserify stream-browserify assert stream-http https-browserify os-browserify url buffer process web3-utils

    2. webpack 설정파일 작성

    /config-overrides.js

    const webpack = require("webpack");
    
    module.exports = function override(config) {
      const fallback = config.resolve.fallback || {};
      Object.assign(fallback, {
        crypto: require.resolve("crypto-browserify"),
        stream: require.resolve("stream-browserify"),
        assert: require.resolve("assert"),
        http: require.resolve("stream-http"),
        https: require.resolve("https-browserify"),
        os: require.resolve("os-browserify"),
        url: require.resolve("url"),
      });
      config.resolve.fallback = fallback;
      config.plugins = (config.plugins || []).concat([
        new webpack.ProvidePlugin({
          process: "process/browser",
          Buffer: ["buffer", "Buffer"],
        }),
      ]);
      return config;
    };
    

    3. react-script 명령어 변경

    package.json

    {
      ...
    
      "scripts": {
        "start": "react-app-rewired start",
        "build": "react-app-rewired build",
      },
      ...
    }

    4. 실행

    npm run start






    - 컬렉션 아티클