vue路由前進後退動畫

vue-route-transition

vue router 切換動畫javascript

特性

  • 模擬前進後退動畫
  • 基於css3流暢動畫
  • 基於sessionStorage,頁面刷新不影響路由記錄
  • 路由懶加載,返回可記錄滾動條位置
  • 前進後退的判斷與路由路徑規則無關
  • 支持任意基於Vue的UI框架

demo

手機掃碼

在線預覽css

說明

配套包含兩個組件html

  • vue-route-transition 負責動畫
  • router-layout 負責頁面排版。 主要是解決transform動畫,position:fixed異常問題

像往常同樣使用

npm i vue-route-transition --save
複製代碼

main.jsvue

import RouteTransition from 'vue-route-transition'
Vue.use(RouteTransition)
複製代碼

App.vuejava

<template>
  // keepAlive默認true,開啓緩存能夠記錄滾動條位置
  // 同時支持路由配置meta:{keepAlive:false} 關閉某個頁面緩存
  <vue-route-transition id="app" :keepAlive="true">
  </vue-route-transition>
</template>
複製代碼

頁面,若是有吸附頭部,或吸附底部元素的狀況下才須要使用router-layout組件css3

<template>
  <router-layout>
    <header slot="header">
      頭部導航
    </header>
    <div></div>
    <div></div>
    ...
    <footer slot="footer">
      <button>底部按鈕</button>
    </footer>
  </router-layout>
</template>
複製代碼

若是存在子路由,需手動設置router-layout的id屬性,滾動條定位做用。git

<router-layout id="__index">
  <router-view></router-view>
  <van-tabbar slot="footer" :fixed="false" v-model="active">
    <van-tabbar-item to="/" icon="shop">標籤</van-tabbar-item>
    <van-tabbar-item to="/tab" icon="chat">標籤</van-tabbar-item>
    <van-tabbar-item to="/swipe" icon="records">標籤</van-tabbar-item>
  </van-tabbar>
</router-layout>
複製代碼

githubgithub

開源協議

本項目基於 MIT 協議,請自由地享受和參與開源。npm

相關文章
相關標籤/搜索