plantillas - Laravel Elixir: ¿cómo minimizar los archivos?
laravel foreach index (4)
Quiero usar Laravel Elixir para minimizar mis archivos css / files. Pero no quiero usar el mix-method y fusionarlos. Todo lo que quiero es generar un archivo "custom.min.js" desde mi "custom.js" original. ¿Hay alguna manera de hacer esto con Elexir?
EDITAR: Para hacerlo un poco más claro: Mi mayor problema es que tengo dos carpetas en "recursos / activos": js y css. Así que, básicamente, quiero minimizar todos los archivos y hacer que se minimicen en "public / js" y "public / css".
Cita de la documentación de Laravel :
Nota: Todas las tareas asumirán un entorno de desarrollo y excluirán la minificación. Para producción, use
gulp --production
.
Esto significa que si desea que los archivos se minimicen, ejecute gulp --production
lugar de simplemente gulp
. Es una mejor práctica que habilitar la compresión directamente en el archivo gulp y se asegura de que pueda depurar los archivos compilados mientras desarrolla la aplicación.
Si desea que se coloquen en public/assets/css
use la ruta como un segundo parámetro:
mix.less(''app.less'', ''public/assets/css'');
gulp --producción.
Jeffrey way respondió sobre el problema aquí: https://laracasts.com/discuss/channels/elixir/elixir-doesnt-minify
O puede encontrarlo en la documentación. ¡Disfruta la codificación!
Si solo quieres copiar archivos .css
, sin usar LESS o SASS, y no quieres combinar archivos (es decir, quieres algo así como un método copy()
con capacidad de minificación) puedes usar el método para combinar, styles()
, llamándolo por cada archivo .css
y pasando cadena de nombre de archivo sin matriz, por ejemplo:
mix.styles(''some.css'');
mix.styles(''node_modules/bootstrap/dist/css/bootstrap.css'', null, ''./'');
Lo mismo se puede hacer con los archivos .js
que usan el método scripts()
:
mix.scripts(''some.js'');
mix.scripts(''node_modules/bootstrap/dist/js/bootstrap.js'', null, ''./'');
Y luego puede usar gulp
(no minimiza, crea archivos .map
) o gulp --production
(crea archivos minificados) como se menciona en las publicaciones anteriores.
Directamente de los documentos de Laravel / Elixir:
Elixir is built on top of Gulp, so to run your Elixir tasks you only need to run the gulp command in your terminal. Adding the --production flag to the command will instruct Elixir to minify your CSS and JavaScript files:
Run all tasks... gulp
Run all tasks and minify all CSS and JavaScript... gulp --production
documentos: https://laravel.com/docs/5.3/elixir#running-elixir