Laravel-mix で、IE11に対応させる


Laravel-mixでは最初から設定されていると思い、していなかった。
IE11を使っている人からの問い合わせで気付いた。

下記の手順を踏めば、IE11対応するはず。

yarn add -D babel-polyfill babel-preset-es2015
.babelrc
{
  "presets": [
    "es2015",
    ["env", {
      "modules": false,
      "targets": {
        "browsers": ["> 2%"],
        "uglify": true
      }
    }]
  ]
}
webpack.mix.js
const { mix } = require('laravel-mix')

mix.options({
  polyfills: [
    'Promise'
  ]
})
// ...
resources/assets/js/app.js
// ...
require('babel-polyfill')
// ...

参考

https://github.com/JeffreyWay/laravel-mix/issues/564
https://github.com/JeffreyWay/laravel-mix/issues/436