中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue-router之實現導航切換過渡動畫效果

發布時間:2020-09-17 09:49:47 來源:腳本之家 閱讀:265 作者:PeriHe 欄目:web開發

過渡動效

提供了transition的封裝組件,添加過渡動畫,通過添加或刪除css類名來實現。

過渡的css類名:

v-enter  進入過渡的開始狀態

v-enter-active  進入活動狀態

v-enter-to  進入的結束狀態

v-leave  離開過渡的開始狀態

v-leave-active  離開活動狀態

v-leave-to  離開結束狀態

過渡模式:

in-out  先進后出

out-in  先出后進

用法:

做一個淡隱淡出效果

把想要運動的元素放到<transition></transition>里面,設置模式。

<transition mode="out-in">
 <router-view class="center"></router-view>
</transition>

在style里寫動效:

.v-enter{
 opacity: 0;
}
.v-enter-active{
 transition: 0.5s;
}
.v-enter-to{
 opacity: 1;
}
.v-leave{
 opacity: 1;
}
.v-leave-to{
 opacity:0;
}
.v-leave-active{
 transition: 0.5s;
}

就ok啦!

動態設置name

再做一個x軸向左和向右滑動進入消失效果。

.left-enter{
 transform:translateX(100%);
}
.left-enter-to{
 transform:translateX(0);
}
 
.left-enter-active{
 transition: 1s;
}
.left-leave{
 transform:translateX(0);
}
.left-leave-to{
 transform:translateX(-100%);
}
.left-leave-active{
 transition: 1s;
}

在transition標簽中用name動態設置效果。此時要刪掉mode="out-in"能自然銜接。

<transition name="left">
  <!--<router-view name="slider"></router-view>-->
  <router-view class="center"></router-view>
 </transition>

向右切換:

.right-enter{
 transform:translateX(-100%);
 }
 .right-enter-active{
 transition: 1s;
 }
 .right-leave-to{
 transform:translateX(100%);
 }
 .right-leave-active{
 transition: 1s;
 }

要想實現左邊的向左,右邊的向右切換呢

路由元信息

在路由配置中meta可以配置一些數據,用在路由對象中。

訪問meta中的數據:$route.meta

也就是說,除了提供的路由配置信息,我們還可以通過meta來自定義想要的數據。

實現左邊的向左,右邊的向右切換:

step1:給每個組件分別加上index,如果目標路由的index大就向右滑動,否則向左。

meta:{
  index:0
  }

0,1,2,3這樣。

step2:監控路由信息對象(上一篇文章中講過原因),可以拿到離開的和目標的index

watch:{
 $route(to,from){
 console.log(to.meta.index);//目標導航下標
 console.log(from.meta.index);//離開導航下標
 }
}

step3:拿下標,比較設置class名稱

watch:{
 $route(to,from){
  if(to.meta.index<from.meta.index){
  this.names="right"
  }else{
  this.names="left"
  }
 }
 },
 data(){
 return{
  index:'/home',
  names:'left'
 }
 }

以上這篇vue-router之實現導航切換過渡動畫效果就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

特克斯县| 乌拉特后旗| 沙河市| 阿拉善右旗| 洪雅县| 信宜市| 巍山| 福鼎市| 建水县| 铁岭市| 商洛市| 逊克县| 陆丰市| 凤庆县| 塔城市| 靖宇县| 徐汇区| 阿拉善左旗| 巨野县| 肥城市| 桦南县| 丹阳市| 和田市| 石棉县| 通山县| 泗阳县| 周至县| 汶上县| 新闻| 平和县| 尼木县| 临澧县| 新平| 阳信县| 溆浦县| 靖州| 仪征市| 南丹县| 玉门市| 汉沽区| 清流县|