En vue3 la clase
.move-enter
se cambio por
.move-enter-from
Introducción
Bienvenidos al Curso Profesional de VueJS
Introducción a VueJS
CLI y Dev Tools
Herramientas y Experiencia de Desarrollo + Archivos .vue
CLI - Hello World
Webpack
Babel
Eslint
SASS y BULMA
PUG
Ejercicio de SASS y PUG
Ejercicio Avanzado de Pug y SASS
Manipulación del DOM
Expresiones
Directivas
Data Binding
Computed properties
Watchers
Eventos
Integración a Platzi Music
Ejercicio de Manipulación del DOM
REST y HTTP
Servicios
Consumir API's REST
Fetch API & Trae
Sistema de Componentes
Component
Creación de componentes
Reactividad
Ciclo de vida
Comunicación entre componentes padres e hijos
Comunicación de hijos hacia padres
Utilización de Slots
Comunicacion entre Componentes Genericos - Event Bus y Plugins
Vue Router
Introducción a Vue Router
Instalar vue-router y configurar router view
Crear y Navegar Rutas con router-link
Extendiendo VueJS
Modifiers
Filtros
Directivas Personalizadas
Mixins
Clases, Animaciones y Transiciones36
Vue Transitions y Animaciones de CSS
Vuex
Estado Centralizado, Flux y Vuex
State
Mutations
Getters
Actions
Integración a Platzi Music
Nuxt.js
Server Side Rendering
Nuxt.js
Conceptos Básicos de Nuxt
Deploy a Producción con Now
Qué es now
Configuración de now y deploy
Conclusiones
Cierre del curso
Bonus
Internacionalización con vue-i18n
Unit Test Karma - Mocha & Webpack
Implementación de Autenticación de Usuarios en Vue usando JWT
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 10
Preguntas 0
En vue3 la clase
.move-enter
se cambio por
.move-enter-from
Vue tiene diferentes componente de transition
<transition name="my style name">elemento, componente etc </>
Este permite que una transicion animada y suave segun lo estilo que le apliquemos en nuestro css.
este
<transition-group name= "my style name" tab=""> lista de elementos </>
Vue transition permite efecto de entrada/salida como
Parametro de entrada
v-enter, v-enter-active, v-enter-to
Parametro de salida
v-leave, v-leave-active, v-leave-to
mas informacion https://es-vuejs.github.io/vuejs.org/v2/guide/transitions.html
Interesante, por lo que veo esto se puede aplicar a cualquier elemento HTML y permite hacer transiciones de manera más sencillas sin tener que estar bindeando clases xD
Soy feliz como una lombris. Me quedo después de algunos intentos.
Mi template de Search.vue
.container.results
// .columns.is-multiline
transition-group(name="fade", tag="div" class="columns is-multiline")
.column.is-one-quarter(v-for="t in tracks", :key="t.id")
pm-track(:track="t",
:class="{ 'is-active': t.id === selectedTrack }",
v-blur="t.preview_url",
@select="setSelectedTrack")
p Todos los derechos reservados
En la sección de metodos del componente Search.vue
methods: {
search () {
// console.log(this.searchQuery)
// this.tracks = tracks
if (this.searchQuery === '') { return }
this.isLoading = true
this.tracks = []
trackService.search(this.searchQuery)
.then(res => {
console.log(res)
// Si el total de resultados es 0, entonces se establece en true y se mostraria el mensaje de notificacon
this.showNotification = res.tracks.total === 0
// Ver en consola el cuerpo del res
// this.tracks = []
this.tracks = res.tracks.items
this.isLoading = false
})
},
setSelectedTrack (id) {
this.selectedTrack = id
}
}
MIs estilos
.fade-enter-active, .fade-leave-active {
transform: scale(1);
transition: all .8s linear;
}
.fade-enter, .fade-leave-to {
transform: scale(0);
}
@import '~bulma/bulma.sass';
.move-enter-active, .move-leave-active {
transform: translateX(0);
transition: all 0.3s linear;
}
.move-enter, .move-leave-to {
transform: translateX(100%);
}
Por fin comprendo el sistema de las transiciones de Vue. ME HACIA BOLAS con todo ello.
Vue ofrece una variedad de maneras para aplicar efectos de transición cuando los elementos son insertados, actualizados o eliminados del DOM. Esto incluye herramientas para:
El componente transition-group nos permite añadir animaciones a una lista de elementos como por ejemplo con un v-for. Sin embargo debemos tener las siguientes consideraciones:
Aquà mi código
Search.vue
.container.results
transition-group(name="move", tag="div", class="columns is-multiline")
.column.is-one-quarter(v-for="t in tracks", :key="t.id")
pm-track(
v-blur="t.preview_url",
:track="t",
@select="setSelectedTrack",
:class="{'is-active' : t.id === selectedTrack}")
Solución:
.container.results
transition-group(name="move" tag="div" class="columns is-multiline")
.column.is-one-quarter(v-for="t in tracks", :key="t.id")
pm-track(
v-blur="t.preview_url"
:class="{ 'is-active': t.id === trackIdSeleted }"
:track="t",
@select="setSelectedTrack"
)
👌
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.