Estoy trabajando en un proyecto usando Webpack , y me di cuenta de un parámetro en el objeto llamado mode .
Según la documentación, tiene dos valores posibles (ambos son una string ). Uno es development y el otro es production .
A continuación se muestra una parte de mi archivo webpack.config.js .
module.exports = { mode: "development", }; Ya puedo inferir que el development será más lento y production será más rápida. Sin embargo, ¿qué hace que el código sea más lento en development ?
el modo de producción se usa para optimizar todos los archivos JS, mientras que el modo de desarrollo mantiene el archivo JS como tal.
A continuación se muestran las diferencias de lo que Webpack compila su código según su mode .
development Este modo usa la función eval() para ejecutar todo su código en una cadena. No lo hace más pequeño, excepto por el hecho de que coloca todo su código en una línea.
La función eval() es más lenta que JavaScript normal (cita de MDN a continuación), por lo que no se recomienda usarla en producción .
Desde MDN:
eval()también es más lento que las alternativas, ya que tiene que invocar el intérprete de JavaScript, mientras que muchas otras construcciones están optimizadas por los motores JS modernos.
production En el modo de production , Webpack hará que su código sea mucho más pequeño (sin usar la función eval() ).
¡ Utilice siempre este modo en producción!