Promise is undefined in IE11 using babel-polyfill

You need to import Babel polyfilly before any other non-polyfill code in your JS entry point:

import 'babel-polyfill';

or if you have already switched to Babel 7:

import '@babel/polyfill';

Also note that you should switch your presets to preset-env. I'd recommend you upgrade to Babel 7 and use @babel/preset-env.

Assuming you have done the switch to Babel 7, this is what your .babelrc should look like:

{
  "presets": [
    [ "@babel/preset-env", {
      "targets": {
        "browsers": [ "last 1 version", "ie >= 11" ]
      }
    }]
  ]
}