Change:
Do you want to request a feature or report a bug? report a bug What is the current behavior? When using Suspense, I see React.Suspense fallback layout instead of loaded component in IE 11 (IE network panel shows, that bundle was loaded) I can not reproduce this bug in 16.7.0-alpha.2! there is everything ok. If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem. Your bug will get fixed much faster if we can run your code and it doesn't have dependencies other than React. Paste the link to your JSFiddle () or CodeSandbox () example below: What is the expected behavior? see the rendered component Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React? Tested on IE11 on windows 7 It reproduces only in 16.8.0-alpha.0 I can not reproduce this bug in 16.7.0-alpha.2, there is everything ok. In Chrome is everything ok in all versions.
the problem was with requirements for additional polyfills in newer version
Hmm which ones? I wouldn't expect that.
Could be the same as A reproducing example would be very helpful; that's unexpected.
can you try running this codesandbox and see if it runs on IE11? if not on codesandbox, try to run it locally. thanks!
I tested this in IE11 with as well as and both appear to work correctly. are you possibly using a polyfill? Which Promise polyfill are you using?
IE11 didn't throw any exceptions. So, that I don't know yet, what exactly polyfill do I need. I solved my problem with I can use only the core-js promise polyfill for 16.7.0-alpha.2 and it works. Im using browserstack for IE11. Unfortunately WeakSet polyfill (as recommended) dint't helped. This is the case without bug React 16.7.0-alpha.2 This is the buggy case React 16.7 I will try to find the exact polyfill, but I don't have any ideas yet :). I runned those examples locally, because they wan't work form sandbox, IE requires more stuff
<img width="1439" alt="screen shot 2019-01-14 at 9 52 58 pm" src="https://user-"
I found matching polyfills after reading and question about Weakmap You need to import not only the Promise, you need to add This is the working version for React 16.7
to clarify, I wasn’t suggesting that you use a polyfill, I was just asking if you were already using one. Just in case it might have been a bad implementation that was causing problems. If you only include the polyfill does it work as expected?
You're right, I just removed WeakSet and it also works.
Thank you for the hint with Sets!
Ah okay, in that case it's expected. React 16 requires both and . This is in the documentation: And in React 16 release notes: That it worked before without is a happy accident. Hope it helps!
It worked because IE11 has native Set implementation, but it isn't compliant. The issue is likely , where we use the API which IE11 doesn't support. maybe we should warn for this?
And how about the Promise ? :)
Ahh. Can you send a PR that just replaces it with an right after creation? I think we didn't want to rely on this.
If you use you need Promise by definition — it depends on you using dynamic which gives you a Promise.
For me, adding the polyfills for , and did not suffice. Instead, this is what worked for me in the :

Discussion:
// attach another listener to flip the boundary back to its normal state. const thenables: Set<Thenable> = (workInProgress.updateQueue: any); if (thenables === null) { <del> workInProgress.updateQueue = (new Set([thenable]): any); </del> <ins> workInProgress.updateQueue = (new Set(): any); workInProgress.updateQueue.add(thenable); </ins> } else { thenables.add(thenable); }