浏览器在babel-preset-env中的目标是什么?

时间:2018-07-28 14:33:36

标签: babeljs

docs for babel-preset-env状态,它允许指定目标浏览器以使用浏览器列表查询进行转换。给出的示例是“> 0.25%,没有死”的查询,以忽略“没有安全更新的浏览器,如IE 10和BlackBerry”。

但是设置debug: true来显示babel正在使用哪些目标,似乎似乎只考虑了浏览器列表查询的固定子集(“ android,chrome,edge,firefox,即ios ,Safari”。

$ cat .babelrc
{
  "presets": [["@babel/env", { "modules": false, "debug": true }]]
}

$ cat .browserslistrc
last 1 version
not dead

$ echo "const fn = (...args) => args;" | npx babel -f test
...
Using targets:
{
  "android": "67",
  "chrome": "67",
  "edge": "17",
  "firefox": "61",
  "ie": "11",
  "ios": "11.3",
  "safari": "11.1"
}
...

$ npx browserslist
and_chr 67
and_ff 60
and_qq 1.2
and_uc 11.8
android 67
baidu 7.12
chrome 67
edge 17
firefox 61
ie 11
ie_mob 11
ios_saf 11.3-11.4
op_mini all
op_mob 46
opera 53
safari 11.1
samsung 7.2

所以应该有可能目标Opera Mini?还是说明文件具有误导性?

例如“最后1个版本,没有失效,不是11,不是Android 67”将不是转换箭头功能-即使根据caniuse(“ and_qq 1.2 ”,“ ie_mob 11”,“ op_mini全部”)


编辑: 我认为这与babel-preset-envcompat-table(而不是caniusebrowser-compat-data)获取浏览器支持数据有关?

0 个答案:

没有答案