Читать книгу Aprender VueJS con 100 ejercicios prácticos - Angel Vazquez Vazquez - Страница 28
Directivas personalizadas DEFINIENDO UNA DIRECTIVA GLOBAL
ОглавлениеVue permite la creación y registro de nuevas directivas a las que podremos dotar el comportamiento personalizado que queramos.
Las directivas personalizadas en Vue como el resto suelen empezar por v- y el nombre de la directiva. Como primer ejemplo empezaremos definiendo una directiva muy simple que cambie el color del texto renderizado.
De esta forma tendríamos una declaración tal que así:
<h1 v-red>Aprendiendo Vue!</h1>
En la que modificaremos el color del título a rojo tal y como indica la propia directiva. El código necesario en Javascript para definir la directiva sería el siguiente:
Vue.directive(“red”, function(el, binding, vnode) {
el.style.color = “red”;
});
Este código se ejecutará en el bind que es una función que se llama solo una vez cuando se enlaza la primera vez la directiva al elemento. Siendo más estrictos podríamos escribirlo así y con más funciones en función de cuando se quiere ejecutar el código.
Vue.directive(“red”, {
bind: function(el, binding, vnode) {
el.style.color = “red”;
}
});
Poniendo todo junto en el ejercicio como resultado tendríamos nuestros textos cambiados a color rojo ya que modificamos la propiedad color del estilo del elemento [1].
Para seguir jugando con nuestro ejemplo podríamos definir otra directiva con el color azul y aplicarla al otro texto y ver el resultado[2].