路由的过渡动画

简介: 路由的过渡动画

<transition>标签


想让路由有过渡动画,需要在<router-view>标签的外部添加<transition>标签,标签还需要一个name属性。

<transition name="fade">
  <router-view ></router-view>
</transition>


我们在/src/App.vue文件里添加了<transition>标签,并给标签起了一个名字叫fade


css过渡类名:组件过渡过程中,会有四个CSS类名进行切换,这四个类名与transitionname属性有关,比如name="fade",会有如下四个CSS类名:


fade-enter:进入过渡的开始状态,元素被插入时生效,只应用一帧后立刻删除。


fade-enter-active:进入过渡的结束状态,元素被插入时就生效,在过渡过程完成后移除。


fade-leave:离开过渡的开始状态,元素被删除时触发,只应用一帧后立刻删除。


fade-leave-active:离开过渡的结束状态,元素被删除时生效,离开过渡完成后被删除。

从上面四个类名可以看出,fade-enter-activefade-leave-active在整个进入或离开过程中都有效,所以CSS的transition属性在这两个类下进行设置。


那我们就在App.vue页面里加入四种CSS样式效果,并利用CSS3的transition属性控制动画的具体效果。代码如下:

.fade-enter {
  opacity:0;
}
.fade-leave{
  opacity:1;
}
.fade-enter-active{
  transition:opacity .5s;
}
.fade-leave-active{
  opacity:0;
  transition:opacity .5s;
}


上边的代码设置了改变透明度的动画过渡效果,但是默认的mode模式是in-out模式,这并不是我们想要的。下面我们学一下mode模式。


过渡模式mode:


in-out:新元素先进入过渡,完成之后当前元素过渡离开。


out-in:当前元素先进行过渡离开,离开完成后新元素过渡进入。

目录
相关文章
|
2月前
|
缓存 JavaScript 前端开发
vue-router学习二:动态路由(路由传递数据的一种方式),路由懒加载,嵌套路由,路由传递参数方式,导航守卫,keep-alive标签
这篇文章主要介绍了Vue Router的高级用法,包括动态路由、路由懒加载、嵌套路由、路由参数传递、导航守卫以及keep-alive的使用。
36 0
vue-router学习二:动态路由(路由传递数据的一种方式),路由懒加载,嵌套路由,路由传递参数方式,导航守卫,keep-alive标签
|
5月前
|
JavaScript 前端开发 API
Vue Router【详解】含路由配置、路由定义、路由跳转、路由传参、自动注册路由、路由守卫、页面滚动、监听路由、$route、$router、路由过渡动画等
Vue Router【详解】含路由配置、路由定义、路由跳转、路由传参、自动注册路由、路由守卫、页面滚动、监听路由、$route、$router、路由过渡动画等
992 0
|
5月前
|
JavaScript
vue 组件封装 | s-scroll 页面滚动动画
vue 组件封装 | s-scroll 页面滚动动画
33 0
|
5月前
|
JavaScript
vue【解决方案】页面/路由跳转后,滚动条消失,页面无法滚动
vue【解决方案】页面/路由跳转后,滚动条消失,页面无法滚动
187 0
|
7月前
vue2路由切换动画(左右横移动画)
vue2路由切换动画(左右横移动画)
138 0
umi如何实现路由的动画跳转?
在src下新建一个layouts的文件夹,在layouts文件夹下新建两个文件
151 0
umi如何实现路由的动画跳转?
Umijs带底部导航路由切换动画
Umijs带底部导航路由切换动画
171 0
|
前端开发
react路由动画?
react路由动画?
|
前端开发
React中路由切换动画
React中路由切换动画
181 0