AntonBrock
@AntonBrock
screen light

Как можно плавно сменять картинки во Vue.Js?

Ребят, привет, как можно плавно сменять картинки во vue?
Я привязал элемент через ref, после по событиям mousover и mouseout меняю картинки (иконки), но как можно добиться плавности?

a(href="#" class="_available-a" @mouseover="changeIcon" @mouseout="changeIconBack")
    img(src="~assets/img/chrome_icon-white(png).png", 
    alt="chrome icon" 
    ref='icon' 
    width='25')
    span Chrome


changeIconLogo(){
  this.$refs.logoSite.src = require("~/assets/img/logoNotEmpty.png")},
 changeIconBackLogo(){
  this.$refs.logoSite.src = require("~/assets/img/logo_empty.png")}
  • Вопрос задан
  • 944 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
transition:

data: () => ({
  image: 0,
  images: [ 'раз картинка', 'два картинка', 'три картинка' ],
}),

<button v-for="(n, i) in images" @click="image = i">
  Показать картинку #{{ i }}
</button>

<transition name="image" mode="out-in">
  <img :key="image" :src="images[image]">
</transition>

.image-enter-active,
.image-leave-active {
  transition: opacity .3s;
}

.image-enter,
.image-leave-to {
  opacity: 0;
}

https://jsfiddle.net/po6ge103/
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы