美文网首页程序员让前端飞Vue.js专区
Vue 路由 过渡动效 数据获取方法

Vue 路由 过渡动效 数据获取方法

作者: 88b61f4ab233 | 来源:发表于2018-11-25 17:46 被阅读13次

过渡动效

<router-view> 是基本的动态组件,所以我们可以用 <transition> 组件给它添加一些过渡效果:

<transition>
 <router-view></router-view>
</transition>

单个路由的过渡

上面的用法会给所有路由设置一样的过渡效果,如果你想让每个路由组件有各自的过渡效果,可以在各路由组件内使用 <transition> 并设置不同的 name。

基于路由的动态过渡

还可以基于当前路由与目标路由的变化关系,动态设置过渡效果

<!-- 使用动态的 transition name -->
<transition :name="transitionName">
 <router-view></router-view>
</transition>
// 接着在父组件内
// watch $route 决定使用哪种过渡
watch: {
 '$route' (to, from) {
  const toDepth = to.path.split('/').length
  const fromDepth = from.path.split('/').length
  this.transitionName = toDepth < fromDepth ? 'slide-right' : 'slide-left'
 }
}
//前端全栈学习交流圈:866109386
//面向1-3经验年前端开发人员
//帮助突破技术瓶颈,提升思维能力

数据获取

进入某个路由后,需要从服务器获取数据。例如,在渲染用户信息时,你需要从服务器获取用户的数据。我们可以通过两种方式来实现:

1.导航完成之后获取:先完成导航,然后在接下来的组件生命周期钩子中获取数据。在数据获取期间显示『加载中』之类的指示。

2.导航完成之前获取:导航完成前,在路由的 enter 钩子中获取数据,在数据获取成功后执行导航。

导航完成后获取数据

当你使用这种方式时,我们会马上导航和渲染组件,然后在组件的 created 钩子中获取数据。这让我们有机会在数据获取期间展示一个 loading 状态,还可以在不同视图间展示不同的 loading 状态。

假设我们有一个 Post 组件,需要基于 $route.params.id 获取文章数据:

在导航完成前获取数据

通过这种方式,我们在导航转入新的路由前获取数据。我们可以在接下来的组件的 beforeRouteEnter 钩子中获取数据,当数据获取成功后只调用 next 方法。

相关文章

  • Vue 路由 过渡动效 数据获取方法

    过渡动效 是基本的动态组件,所以我们可以用 组件给它添加一些过渡效果: 单个路由的...

  • CSS动画

    过渡 transition 属性 示例 参考: 动效落地方法 优秀的 CSS 交互动效示例 支持:nternet ...

  • vue-router过渡动效

    前言: 一个常用的需求:当路由进行切换的时候进入不同的页面时,我们可以添加不同的切换方式,这时就用到了vue-ro...

  • vue-router 常用知识点三

    目录 - 1.vue-router 路由元信息 - 2.vue-router 数据获取 - 3.vue-rout...

  • Vue知识点

    Vue起步 Axios:ajax数据的获取。Vue Router:多页面之间的路由。Vuex:各个组件之间的数据共...

  • 添加过渡动效

    路由跳转添加过渡动效 绑定动画类: JS控制动画类是slide-right还是slide-left: 动画样式

  • Vue学习笔记进阶篇——过渡状态

    本文为转载,原文:Vue学习笔记进阶篇——过渡状态Vue 的过渡系统提供了非常多简单的方法设置进入、离开和列表的动...

  • vue其他知识点简单记录

    路由: 过渡动画 组件 数据绑定 事件 方法:事件可以调用方法 子父组件传值 插槽 动态组件

  • Vue2.0一个login跳转实例

    需要解决的问题:store存储登录状态Vue-Router导航钩子拦截路由Vue-Resource获取后台的数据需...

  • 腾讯出品的交互微动效设计指南

    本设计指南适用于UI设​计界面中交互微动效,涵盖入场、出场动效,过渡动效和加载动效,在时间和缓动曲线的选择上提供了...

网友评论

    本文标题:Vue 路由 过渡动效 数据获取方法

    本文链接:https://www.haomeiwen.com/subject/swapqqtx.html