Search code examples
javascriptinternet-explorermoduleinternet-explorer-11transcrypt

How can I make JavaScript modules work in IE 11


I have JavaScript modules which I want to use with IE11.

In the HTML pages they are referenced like this:

<script type="module">
     import * as mystuff from './scripts/mystuff.js'; window.mystuff = mystuff
</script>

They do not work in Internet Explorer 11, but I cannot change the modules to normal scripts (because they are generated by Transcrypt). How can I make them work with IE? Does a polyfill or something similar for the <script type="module"> construct exist?


Solution

  • You cannot do this. IE does not understand the type="module" attribute.

    Instead use rollup.js and Babel to bundle your module into an old style script mystuff_incl_ie.js and load this with the normal script tag:

    <script src='./scripts/mystuff_incl_ie.js'></script>
    

    See also Bundle JS with rollup and Babel for use in IE11.