javascript - node - babelrc
¿Cuál es la diferencia entre babel-preset-es2015 y babel-preset-env? (1)
Los babel-preset-es20XX
(15, 16, 17) incluyen las transformaciones necesarias para convertir las características agregadas en ese año específico a un código que sea compatible con la versión anterior.
babel-preset-env
incluye transformaciones para todas las características que han aterrizado en la especificación, pero solo habilita las necesarias para hacer que las características funcionen en función del conjunto de entornos que le hayas proporcionado. Si no pasa ninguna opción a env
it esencialmente funciona como es2015, es2016, es2017
todos juntos.
babel-preset-react
es el conjunto de transformaciones necesarias para convertir las extensiones de sintaxis relacionadas con React / Facebook como Flowtype y React''s JSX.
Actualmente estoy tratando de entender sobre la configuración de Babel, pero me confundí con babel-preset-**
, hay muchos presets en babel, como env
, es2015
, react
y otros, entiendo que babel-preset-es2015
es necesario para transpile el código es2015 al código js anterior para que pueda ser entendido por el navegador más / viejo, ¿qué pasa con babel-preset-env
?
¿Cuáles son las diferencias entre esos preajustes? ¿Se puede usar env
sin usar es2015
o viceversa? y ¿cuáles son los casos en que necesitamos que esos dos preajustes estén presentes en nuestro sistema de compilación de proyectos?
Gracias.