我在我的应用中使用URLSearchParams
。该代码使用babel
和babel/preset-env
进行了core-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,URLSearchParams
的polyfill仍未包含在最终捆绑包中。到目前为止,我已经通过手动导入core-js/web/url-search-params.js
解决了这个问题,但是我宁愿由babel/preset-env
自动完成。
我可以通过某种方式配置babel/preset-env
来包含来自core-js的URLSearchParams
polyfill吗?
答案 0 :(得分:1)
由于我对这个问题持反对意见,所以我可能也应该在这里添加答案。
对我来说,问题是我在Webpack配置中的入口点旁边添加了@babel/polyfill
:
{
entry: {
"my.js": ["@babel/polyfill", "my.js"]
}
}
要解决我的问题,我从入口点删除了@babel/polyfill
,而是在my.js
的顶部添加了以下内容:
import "core-js/stable";
import "regenerator-runtime/runtime";