最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VUE單頁面切換動(dòng)畫代碼(全網(wǎng)最好的切換效果)

 更新時(shí)間:2019年10月31日 18:09:57   作者:愛忽悠的唐唐  
今天小編就為大家分享一篇VUE單頁面切換動(dòng)畫代碼(全網(wǎng)最好的切換效果),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

我就廢話不多說了,直接上代碼吧!

// 視圖切換動(dòng)畫邏輯
let history = window.sessionStorage
let historyCount = history.getItem('count') * 1 || 0
function routerTransition (to, from) {
 const toIndex = history.getItem(to.name)
 const fromIndex = history.getItem(from.name)
 let direction = 'forward'
 if (toIndex) {
 if (toIndex >= fromIndex || !fromIndex) {
  store.commit('UPDATE_DIRECTION', {direction})
 } else {
  direction = 'reverse'
  store.commit('UPDATE_DIRECTION', {direction})
 }
 } else {
 ++historyCount
 history.setItem('count', historyCount)
 to.path !== '/' && history.setItem(to.name, historyCount)
 direction = 'forward'
 store.commit('UPDATE_DIRECTION', {direction})
 }
}
router.beforeEach(function (to, from, next) {
 routerTransition(to, from)
 next()
})
<template>
 <div id="app">
  <div v-transfer-dom >
  <loading :show="isLoading" :transition="''"></loading>
  </div>
  <transition :name="viewAnimate">
    <router-view v-if="isNetworkOnline"></router-view>
    <no-network v-if="!isNetworkOnline"></no-network>
  </transition>
 </div>
</template>

<script>
import '@/assets/iconfont/iconfont.css'
import { Loading, TransferDom } from 'vux'
import {mapState} from 'vuex'
import noNetwork from '@/page/system/callback/noNetwork.vue'
export default {
 directives: {
 TransferDom
 },
 computed: {
 ...mapState({
  isLoading: state => state.isLoading,
  direction: state => state.direction,
  isNetworkOnline: state => state.isNetworkOnline
 })
 },
 // dynamically set transition based on route change
 watch: {
 '$route' (to, from) {
  if (this.direction === 'forward') {
  this.viewAnimate = 'slide-left'
  } else {
  this.viewAnimate = 'slide-right'
  }
 }
 },
 data () {
 return {
  viewAnimate: 'slide-left'
 }
 },
 components: {
 Loading,
 noNetwork
 }
}
</script>

<style lang="less">
@import '~vux/src/styles/reset.less';
@import '~vux/src/styles/close.less';
@import '~@/styles/common.less';
body {
 background-color: #fbf9fe;
}
@keyframes slideInLeft {
 from {
  transform: translate3d(100%, 0, 0);
  opacity: 1;
 }
 to {
  transform: translate3d(0, 0, 0);
    opacity: 1;
 }
}
@keyframes slideInRight {
 from {
  transform: translate3d(-100%, 0, 0);
  opacity: 1;
 }
 to {
  transform: translate3d(0, 0, 0);
    opacity: 1;
 }
}
@keyframes slideLeftOut {
 from {
  transform: translate3d(0, 0, 0);
  opacity: 0;
 }
 to {
  transform: translate3d(100%, 0, 0);
  opacity: 0;
 }
}
@keyframes slideRightOut {
 from {
  transform: translate3d(0, 0, 0);
  opacity: 0;
 }
 to {
  transform: translate3d(-100%, 0, 0);
  opacity: 0;
 }
} 
.slide-left-enter-active {
 animation: slideInLeft .3s forwards;
 z-index:5;
}

.slide-left-leave-active {
 animation: slideLeftOut .3s forwards;
 z-index:3;
}
 .slide-right-enter-active {
 animation: slideInRight .3s forwards;
 z-index:5;
}

.slide-right-leave-active {
 animation: slideRightOut .3s forwards;
 z-index:3;
} 
</style>

以上這篇VUE單頁面切換動(dòng)畫代碼(全網(wǎng)最好的切換效果)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue中的插槽Slot技術(shù)詳解

    Vue中的插槽Slot技術(shù)詳解

    插槽(Slot)技術(shù)是一種用于組件化開發(fā)的重要技術(shù),允許我們?cè)诮M件中定義一些占位符,在Vue中,插槽的使用方式可以分為三種:默認(rèn)插槽、具名插槽和作用域插槽,下面我們就來看看這三種方式的具體使用吧
    2023-09-09
  • 詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸

    詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸

    本篇文章主要介紹了詳解用vue.js和laravel實(shí)現(xiàn)微信授權(quán)登陸,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • vue 判斷頁面是首次進(jìn)入還是再次刷新的實(shí)例

    vue 判斷頁面是首次進(jìn)入還是再次刷新的實(shí)例

    這篇文章主要介紹了vue 判斷頁面是首次進(jìn)入還是再次刷新的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • vue踩坑之backgroundImage路徑問題及解決

    vue踩坑之backgroundImage路徑問題及解決

    這篇文章主要介紹了vue踩坑之backgroundImage路徑問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue百度地圖實(shí)現(xiàn)定位和marker拖拽監(jiān)聽功能

    Vue百度地圖實(shí)現(xiàn)定位和marker拖拽監(jiān)聽功能

    這篇文章主要介紹了Vue百度地圖實(shí)現(xiàn)定位和marker拖拽監(jiān)聽功能,實(shí)現(xiàn)思路非常簡單,本文結(jié)合實(shí)例代碼效果圖給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-11-11
  • Vue通過封裝全局獲取焦點(diǎn)指令

    Vue通過封裝全局獲取焦點(diǎn)指令

    這篇文章主要為大家詳細(xì)介紹了Vue通過封裝全局獲取焦點(diǎn)指令的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下
    2023-12-12
  • DeepSeek?助力?Vue?開發(fā)絲滑的步驟條效果(過程詳解)

    DeepSeek?助力?Vue?開發(fā)絲滑的步驟條效果(過程詳解)

    本文詳細(xì)介紹了如何使用Vue.js和ElementUI創(chuàng)建一個(gè)進(jìn)度條組件,并將所有代碼保存在一個(gè)文件夾中,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • vue實(shí)現(xiàn)瀑布流組件滑動(dòng)加載更多

    vue實(shí)現(xiàn)瀑布流組件滑動(dòng)加載更多

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)瀑布流組件滑動(dòng)加載更多,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 詳解Vue新增內(nèi)置組件的使用

    詳解Vue新增內(nèi)置組件的使用

    這篇文章主要為大家介紹了Vue新增內(nèi)置組件的使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • Vue通過阿里云oss的url連接直接下載文件并修改文件名的方法

    Vue通過阿里云oss的url連接直接下載文件并修改文件名的方法

    這篇文章主要介紹了Vue通過阿里云oss的url連接直接下載文件并修改文件名的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12

最新評(píng)論

小金县| 固始县| 广东省| 新龙县| 安岳县| 白朗县| 龙南县| 顺平县| 东阿县| 宁德市| 渭南市| 定兴县| 兴和县| 德令哈市| 理塘县| 遂川县| 新民市| 定日县| 广南县| 临湘市| 揭阳市| 桐乡市| 安泽县| 菏泽市| 宁城县| 平舆县| 昭通市| 普定县| 长治市| 通许县| 蒲城县| 宜春市| 禄劝| 会东县| 汾西县| 凌源市| 长阳| 随州市| 翁源县| 长春市| 舟山市|