53

I have a react app made with create react app, and hot reloading kills the page entirely with the error:

Uncaught ReferenceError: process is not defined

What's strange is that there seems to be an iframe injected which I never noticed before:

enter image description here

This iframe is added to the DOM as soon as I reload and breaks the page as well as preventing an update. I can't find any documentation on "iframe-bundle.js" online.

Edit: I tried deleting my node modules and any questionable imports (I temporarily installed craco prior). Still the same issue. It's incredibly annoying!

Edit 2: If I delete that iframe everything seems to return to normal, i.e. page updates and is interactable

Dara Java
  • 2,410
  • 3
  • 27
  • 52

5 Answers5

106

Upgrading your application to CRA (react-scripts) v5 with npm i react-scripts@latest will fix the issue.

If your app is not able to be upgraded because dependencies are incompatible or you require node version < 14, you can try the following workaround which worked for me:

  1. Revert back to CRA 4: npm i --save-exact [email protected]
  2. Add react-error-overlay as a dev dependency: npm i --save-dev [email protected]
  3. Then add the following line to your package.json
"resolutions": {
  "react-error-overlay": "6.0.9"
},
  1. If you're using NPM, force your package-lock.json file to actually use 6.0.9 with npx npm-force-resolutions

    If you're using Yarn, just run yarn install and your resolutions will be applied and fix the issue

More info at https://github.com/facebook/create-react-app/issues/11773

Chris
  • 1,251
  • 2
  • 8
  • 8
11

I fixed it. I did 2 things:

  • Updated npm to latest
  • Updated react-scripts to latest

Not sure which one fixed it.

Dara Java
  • 2,410
  • 3
  • 27
  • 52
10

I recently had this issue aswell. I did couple of things to make it work. You can try these aswell.

  • Change the react-script version to 4.0.3 inside package.json.

  • Add this to package.json, below the dependencies.

"resolutions": { "react-error-overlay": "6.0.9" },

  • Install react-error-overlay v6.0.9 inside your devDependencies.

  • Remove your node_modules and package-lock.json.

  • Do npm install and check that works.

Note: After doing the above steps I had to run npm install [email protected] again to fix this issue.

Dharman
  • 30,962
  • 25
  • 85
  • 135
Kiran
  • 323
  • 4
  • 16
4

Make sure your react-scripts version is ^4.0.3, then install react-error-overlay as devDependencies using this command below:

npm i -D [email protected] on NPM

yarn add -D [email protected] on Yarn

fxbayuanggara
  • 316
  • 3
  • 16
1

I tried the answers above, but non of those fixed the issue for me. What I did to solve this problem in my case was:

  1. Delete node_modules
  2. clearing the cache -> npm cache clean --force
  3. install the latest react-scripts version -> npm i react-scripts@latest
Luke_KS
  • 123
  • 2
  • 11
  • Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Jun 09 '22 at 19:50