Create-react-app: IE11. Object doesn't support property or method 'repeat'

Created on 8 May 2020  Â·  10Comments  Â·  Source: facebook/create-react-app

Describe the bug

When throwing an error using JS throw during IE11 development, the following script error dialog occurs:

Object doesn't support property or method 'repeat'

It is similar to the issue #8438 and #8405 except that it is in reference to _repeat_ from _String.prototype.repeat_ instead of _entries_ from _Object.entries_.

The _Object.entries_ issue was fixed in a CRA fork https://github.com/EverlongProject/create-react-app/pull/9. A similar fix might be needed for _String.prototype.repeat_.

The problem does not resolve itself when adding core-js package.

Did you try recovering your dependencies?

No

Which terms did you search for?

A combination of "object support repeat" in the GitHub issues.

Environment

npx: installed 98 in 6.932s

Environment Info:

  current version of create-react-app: 3.4.1
  running from C:\Users\Nathan\AppData\Roaming\npm-cache\_npx\35912\node_modules\create-react-app

  System:
    OS: Windows 10 10.0.18363
    CPU: (12) x64 Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
  Binaries:
    Node: 12.16.1 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.22.4 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
    npm: 6.14.4 - C:\Users\Nathan\AppData\Roaming\npm\npm.CMD
  Browsers:
    Edge: 44.18362.449.0
    Internet Explorer: 11.0.18362.1
  npmPackages:
    react: ^16.13.1 => 16.13.1
    react-dom: ^16.13.1 => 16.13.1
    react-scripts: 3.4.1 => 3.4.1
  npmGlobalPackages:
    create-react-app: Not Found

Steps to reproduce

  1. Add this to the constructor of App.js:
setTimeout(() => { throw new Error("Test throw!!"); }, 3000);
  1. Open and view in IE11 and wait 3 seconds

Expected behavior

It should show the react error screen.

Actual behavior

Internet Explorer 11 shows an script error dialog containing the following:

errorLine (1)
errorCharacter (250504)
errorCode (0)
errorMessage (Object doesn't support property or method 'repeat')

Reproducible demo

None

bug report needs triage stale

Most helpful comment

@littleLuyx use import { enableES5 } from "immer"; enableES5();
where you are using immer

All 10 comments

@nmoinvaz Hey, Are you using "immer", the produce method of immer was causing issue for me.

@nikhiltech I am running into this same issue and am using immer - were you able to find a workaround?

@nikhiltech never mind! I updated to v 6.0.9 of immer and it seems to be working now.

I have the same problem. How did you solve it?I suspect I used React.Provider, but I don't know how to solve it

@littleLuyx use import { enableES5 } from "immer"; enableES5();
where you are using immer

@littleLuyx use import { enableES5 } from "immer"; enableES5();
where you are using immer

Thank you. It's very instructive. I didn't use immer in my document, but I was prompted with syntax errors. Finally, I introduced core-js to solve this problem

This issue has been automatically marked as stale because it has not had any recent activity. It will be closed in 5 days if no further activity occurs.

I was not using immer. I think it is due to the error panel library that is being used not supporting legacy browsers.

This issue has been automatically marked as stale because it has not had any recent activity. It will be closed in 5 days if no further activity occurs.

This issue has been automatically closed because it has not had any recent activity. If you have a question or comment, please open a new issue.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

alleroux picture alleroux  Â·  3Comments

Aranir picture Aranir  Â·  3Comments

ap13p picture ap13p  Â·  3Comments

jnachtigall picture jnachtigall  Â·  3Comments

barcher picture barcher  Â·  3Comments