4

URLSearchParams在我的应用程序中使用。babel代码使用、 使用babel/preset-envcore-js@3包含我目标浏览器所需的polyfill 进行编译。

这是我的 babelrc:

{
  "presets": [
    [
      "@babel/preset-env",
      {
        "modules": false,
        "corejs": "3",
        "useBuiltIns": "entry",
        "forceAllTransforms": true
      }
    ]
  ]
}

这是我的.browserslistrc

IE 11
Edge >= 14
last 2 Chrome versions
last 2 Firefox versions

问题是,即使我在 中指定.browserslistrc了 IE11,polyfillURLSearchParams仍然没有包含在最终包中。到目前为止,我已经通过手动导入解决了这个问题,core-js/web/url-search-params.js但我宁愿由babel/preset-env.

我可以babel/preset-env以某种方式配置以包含URLSearchParamscore-js 中的 polyfill 吗?

4

1 回答 1

2

由于我对这个问题表示赞成,我可能也应该在这里添加我的答案。

对我来说,问题是我@babel/polyfill在 webpack 配置中的入口点旁边添加:

{
  entry: {
    "my.js": ["@babel/polyfill", "my.js"]
  }
}

为了解决我的问题,我@babel/polyfill从入口点中删除了,而是在顶部添加了以下内容my.js

import "core-js/stable";
import "regenerator-runtime/runtime";
于 2020-02-14T09:49:56.533 回答