Я пытаюсь настроить среду для разработки javascript с помощью babel и webpack.
Но я не понимаю конфигурации вавилона о presets
.
В Руководство по использованию , мы можем видеть, что пресеты с "@babel/env"
.
Но в других местах документа я больше не вижу такой конфигурации, вместо "@babel/preset-env"
. например здесь https://babeljs.io/docs/en/babel-preset-env
Я не могу найти разницу между "@babel/env"
и "@babel/preset-env"
везде со своим плохим английским, я действительно читаю документ снова и снова, без удачи.
Может быть, они одинаковы?
Кстати, наборы целей, кажется, не работают, удаление целей также может нормально выполняться в ie9 + (или каковы его цели по умолчанию), если я хочу, чтобы мой сценарий es6 мог быть преобразован в совместимость ie8, таким образом, это не самое важное.
вот мой проект sdk-dev-env
// https://babeljs.io/docs/en/configuration
const presets = [
[
'@babel/env',
{
// https://babeljs.io/docs/en/babel-preset-env#targets
// TODO: how to compatibilite with ie 8
targets: {
ie: '8',
edge: '17',
firefox: '60',
chrome: '67',
safari: '11.1'
/**
* you can also set browsers in package.json
* "browserslist": ["last 3 versions"]
* relative links:
* https://github.com/browserslist/browserslist
*/
},
corejs: '3',
// corejs: { version: 3, proposals: true },
/**
* https://babeljs.io/docs/en/usage#polyfill
* https://github.com/zloirock/core-js#babelpreset-env
* "usage" will practically apply the last optimization mentioned above where you only include the polyfills you need
*/
useBuiltIns: 'usage'
}
]
]
const plugins = []
if (process.env['ENV'] === 'prod') {
// plugins.push(...);
}
module.exports = { presets, plugins }
Я надеюсь знать, что они одинаковы или нет, если нет, то чем отличаются.
И лучший способ использовать babeljs 7.4 с core-js 3