La extensión permite gestionar los archivos css y javascript, que, en adelante, llamaremos activos.
Básicamente, se encarga de:
La librería principal es Assets. Se encarga de incluir activos en una página web.
De modo complementario, es posible utilizarla para declarar etiquetas meta y variables, que luego, pueden ser utilizadas por una plantilla.
La librería debe ejecutarse a través de una instancia única:
$assets = app('assets');
Sin embargo, pocas veces se utiliza la librería directemente, ya que es más común utilizarla, indirectamente, con el objeto Template.
Es decir, los métodos que detallaremos a continuación, podrán ser utilizados desde una plantilla.
Agregue archivos css de la siguiente manera:
$assets->css('path/to/css/styles.css, path/to/css/styles2.css');
$assets->css(['path/to/css/styles.css', 'path/to/css/styles2.css']);
$assets->css([
['href' => 'path/to/css/styles.css', 'integrity' => '...']
]);
La lista de rutas a las hojas de estilos puede ser:
$assets->js('path/to/js/scripts.js, path/to/js/scripts2.js', true);
$assets->js(['path/to/js/scripts.js', 'path/to/js/scripts2.js']);
$assets->js([
['src' => 'path/to/js/scripts.js', 'defer' => '']
]);
La lista de rutas a los archivos javascript puede ser:
Por defecto, los archivos javascript se declaran antes del cierre de la etiqueta body.
Si se desea declarar los archivos javascript en el head, debe pasarse true como segundo parámetro.
Las rutas a los archivos generados por Assets, se definen como:
"assets/asset-key.min.css"
"assets/asset-key.min.js"
Con el solo hecho de utilizar estos archivos, ya estamos utilizando las funciones de la librería. Por ejemplo:
Es posible ejecutar código javascript cuando se termina de cargar la página, de la siguiente manera:
$assets->domready("alert('Hello word')");
Para ingresar etiquetas meta, utilice el método:
$assets->meta(['title' => '...', 'content' => '...']);
Para agregar opciones de manera flexible, incluso variables aleatorias, se utiliza el método:
$assets->options([
'js' => 'path/to/js/scripts.js',
'css' => ['path/to/css/styles.css', 'path/to/css/styles2.css'],
'domready' => "alert('Hello word')",
'hash' => 'page-hash',
]);
En el ejemplo, agregamos una variable llamada hash. Para recuperar esa variable, se utiliza:
$hash = $assets->getOption('hash');