亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

vue router如何實現自動判斷左右翻頁轉場動畫效果

發布時間:2021-06-29 09:48:43 來源:億速云 閱讀:173 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關vue router如何實現自動判斷左右翻頁轉場動畫效果,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

一 。首先父頁面

home.vue:

<!-- keepAlList是用來動態判斷組件是否需要keep-alive,建議保存到vuex中作為全局變量,至于下方的css動畫,看官可以按照喜好自由修改-->
<transition :name="transNa">
 <keep-alive :include="keepAlList">
 <router-view class="child-view"></router-view>
 </keep-alive>
</transition>
<style scoped>
.child-view {
 position: absolute;
 width: 100%;
 height: 100%;
 transition: all .5s ease;
 -webkit-transition: all .5s ease;
 -moz-transition: all .5s ease;
}
.rightin-enter,
.leftin-leave-active {
 opacity: 0;
 transform: translate3d(50% 0, 0);
 -webkit-transform: translate3d(50%, 0, 0);
 -moz-transform: translate3d(50%, 0, 0);
}
.leftin-enter,
.rightin-leave-active {
 opacity: 0;
 transform: translate3d(-50% 0, 0);
 -webkit-transform: translate3d(-50%, 0, 0);
 -moz-transform: translate3d(-50%, 0, 0);
}
</style>

二 。其次附上我的main.js片段(用來在跳轉頁面之前動態設置轉場動畫)

  main.js:

//進入路由之前設置攔截器
let noLoginList = ["login", "register", "forget", "home", "classify", "goodsDetial"];
router.routeInfo.beforeEach((to, from, next) => {
 let user = sessionStorage.getItem('user');
 //如果要去登錄頁面
 if (noLoginList.indexOf(to.name) >= 0) {
  if (!user || user == '') {
   //未登錄的狀態通行
   next();
   return;
  } else {
   if (["login", "register", "forget"].indexOf(to.name) >= 0) {
    //已登錄的狀態去首頁
    next({
     name: 'home'
    });
    return;
   } else {
    //已登錄的狀態去首頁
    next();
    return;
   }
  }
 } else {
  //去登錄頁面以外的頁面(以下是本文關鍵代碼)
  if (user && user != '') {
   //判斷是否為需要緩存組件,如果是添加組件名到數組
   if (to.meta.keepAlive) {
    const toName = to.name;
    let keepLi = store.getters.getKeepAlList;
    keepLi.indexOf(toName) < 0 ? keepLi.push(toName) : '';
    store.commit('SET_KEEPALLIST', keepLi);
   }
   //根據路徑名深度設置轉場動畫類型
   store.commit('SET_TRANSNA', (to.path.split('/').length < from.path.split('/').length ? 'leftin' : 'rightin'));
   next();
  } else {
   let toWhere = router.nameList.indexOf(to.name) >= 0 ? to : {name: 'home'};
   next({
    name: 'login',
    params: {
     jumpTo: {
      name: toWhere.name,
      params: toWhere.params,
      query: toWhere.query,
     },
    }
   });
  }
 }
});

關于“vue router如何實現自動判斷左右翻頁轉場動畫效果”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

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

AI

原平市| 商丘市| 邹平县| 克拉玛依市| 兖州市| 始兴县| 海丰县| 鄢陵县| 灵璧县| 克拉玛依市| 石柱| 吉安县| 阳泉市| 潮州市| 交口县| 旬邑县| 银川市| 东乡| 大连市| 融水| 辉县市| 商河县| 南康市| 当雄县| 精河县| 齐齐哈尔市| 浦北县| 沧州市| 通渭县| 东海县| 应用必备| 兰溪市| 伊金霍洛旗| 中山市| 禹州市| 安远县| 桐柏县| 长寿区| 垫江县| 朝阳区| 白城市|