Как настроить webpack + babel для ie11? - PullRequest
0 голосов
/ 06 мая 2020

Конфиги Babel:

"babel": {
"presets": [
  [
    "@babel/env",
    {
      "targets": {
        "ie": "9"
      },
      "useBuiltIns": "usage",
      "corejs": 3
    }
  ]
]},

Модули узлов:

  "devDependencies": {
"@babel/core": "^7.9",
"@babel/preset-env": "^7.9",
"babel-loader": "^8",
"core-js": "^3",
"regenerator": "^0.14"
"webpack": "^4.40",
"webpack-cli": "^3.3"},

Конфиги Webpack

{
        test: /\.js$/,
        exclude: /node_modules\/(?!(dom7|ssr-window|swiper)\/).*/,
        loader: 'babel-loader'
},

В Inte rnet Explorer 11 выдает ошибку «Объект не поддерживает свойство или метод 'closest'»

1 Ответ

1 голос
/ 06 мая 2020

Здесь вы правильно настроили webpack и @babel/preset-env, но, к сожалению, core-js, на который @babel/preset-env полагается для всех своих полифиллов, не выполняет полифилы каких-либо API-интерфейсов браузера, каковыми являются Element.closest(). Он заполняет только JavaScript.

Разница между API браузера / веб-интерфейса и JavaScript очень тонкая - он включает все, к чему вы получаете доступ из узла / элемента, и любые веб-API , перечисленные здесь

Если вы хотите использовать полифил Element.closest, вам придется включить полифилл отдельно - element-closest кажется популярным!

...