国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

vue router自動判斷左右翻頁轉(zhuǎn)場動畫效果

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 22:28:03
文檔

vue router自動判斷左右翻頁轉(zhuǎn)場動畫效果

vue router自動判斷左右翻頁轉(zhuǎn)場動畫效果:前段時間做了一個移動端spa項目,技術(shù)基于 :vue + vue-router + vuex + mint-ui 因為使用了vue-cli腳手架的webpack模版,所有頁面都以.vue為后綴的文件作為一個組件 最近公司項目比較少終于有空來記錄一下自己對vue-router的一些小小的使用心得,
推薦度:
導(dǎo)讀vue router自動判斷左右翻頁轉(zhuǎn)場動畫效果:前段時間做了一個移動端spa項目,技術(shù)基于 :vue + vue-router + vuex + mint-ui 因為使用了vue-cli腳手架的webpack模版,所有頁面都以.vue為后綴的文件作為一個組件 最近公司項目比較少終于有空來記錄一下自己對vue-router的一些小小的使用心得,

前段時間做了一個移動端spa項目,技術(shù)基于 :vue + vue-router + vuex + mint-ui

因為使用了vue-cli腳手架的webpack模版,所有頁面都以.vue為后綴的文件作為一個組件

最近公司項目比較少終于有空來記錄一下自己對vue-router的一些小小的使用心得,

  一般的移動端口單頁應(yīng)用在跳轉(zhuǎn)頁面時候會有相應(yīng)的轉(zhuǎn)場動畫,比如:

  1. 從當(dāng)前一級頁面跳轉(zhuǎn)二級頁面需要展示的轉(zhuǎn)場動畫是一級頁面向屏幕左邊移動消失的同時,

   二級頁面從屏幕的右邊向左邊移動出現(xiàn)。(類似翻書翻到下一頁的效果)

  2. 從當(dāng)前二級頁面跳回一級頁面需要展示的轉(zhuǎn)場動畫是二級頁面向屏幕右邊移動消失的同時,

   一級頁面從屏幕的左邊向右邊移動出現(xiàn)。類似(翻書翻回到上一頁的效果)

  但是出現(xiàn)了一個問題:如何判斷當(dāng)前頁面和將要跳轉(zhuǎn)頁面之間的層級關(guān)系呢?

我的解決辦法是:創(chuàng)建頁面 (組件)時,在定義頁面的router里通過設(shè)置頁面的path(訪問路徑 )屬性來區(qū)分組件之間的層級關(guān)系。

比如一個一級頁面 (組件) ‘A' 的訪問路徑為 ‘/A' 。他的二級頁面 ‘B' 的訪問路徑為 ‘/A/B' .

  那么在跳轉(zhuǎn)頁面之前,只需要比較當(dāng)前頁面和將要跳轉(zhuǎn)到的頁面的路徑深度就可以動態(tài)設(shè)置轉(zhuǎn)場動畫了。

比如 ‘/A/B'的深度 >  ‘/A' 的深度那么 從B頁面跳轉(zhuǎn)到A頁面就應(yīng)該是 效果2:(翻書翻回到上一頁的效果).

一 。首先父頁面

home.vue:

<!-- keepAlList是用來動態(tài)判斷組件是否需要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片段(用來在跳轉(zhuǎn)頁面之前動態(tài)設(shè)置轉(zhuǎn)場動畫)

  main.js:

//進入路由之前設(shè)置攔截器
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 == '') {
 //未登錄的狀態(tài)通行
 next();
 return;
 } else {
 if (["login", "register", "forget"].indexOf(to.name) >= 0) {
 //已登錄的狀態(tài)去首頁
 next({
 name: 'home'
 });
 return;
 } else {
 //已登錄的狀態(tài)去首頁
 next();
 return;
 }
 }
 } else {
 //去登錄頁面以外的頁面(以下是本文關(guān)鍵代碼)
 if (user && user != '') {
 //判斷是否為需要緩存組件,如果是添加組件名到數(shù)組
 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);
 }
 //根據(jù)路徑名深度設(shè)置轉(zhuǎn)場動畫類型
 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,
 },
 }
 });
 }
 }
});

總結(jié)

以上所述是小編給大家介紹的vue router自動判斷左右翻頁轉(zhuǎn)場動畫效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

vue router自動判斷左右翻頁轉(zhuǎn)場動畫效果

vue router自動判斷左右翻頁轉(zhuǎn)場動畫效果:前段時間做了一個移動端spa項目,技術(shù)基于 :vue + vue-router + vuex + mint-ui 因為使用了vue-cli腳手架的webpack模版,所有頁面都以.vue為后綴的文件作為一個組件 最近公司項目比較少終于有空來記錄一下自己對vue-router的一些小小的使用心得,
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 精品国产免费观看一区高清 | 国产精品国产三级国产普通话一 | 熟年交尾五十路视频在线播放 | 欧美日韩亚洲综合另类ac | 黄色成人在线观看 | 国产欧美一区二区精品久久久 | 国产第7页 | 国产精品高清视亚洲一区二区 | 中文字幕日韩一区二区三区不卡 | 天码毛片一区二区三区入口 | 国产成人久久蜜一区二区 | 欧美孕妇性xxxⅹ精品hd | 91精品啪国产在线观看免费牛牛 | 国产麻豆久久 | 日韩精品一区二区三区国语自制 | 啪啪亚洲| 在线亚洲欧美日韩 | 国产精彩视频在线观看 | 一级欧美日韩 | 香蕉久久一区二区不卡无毒影院 | 日本黄 色 成 年 人免费观看 | 四虎精品成人a在线观看 | 中文字幕 在线观看 | 欧美自拍亚洲 | 国产精品久久久精品三级 | 欧美αv日韩αv另类综合 | 伊人中文字幕 | 国产欧美在线观看一区二区 | 免费一级毛片 | 国产精品综合一区二区 | 欧美日韩另类综合 | 国内一级野外a一级毛片 | 国产精品久久久久久久y | 国产成人在线免费视频 | 日本a v 黄| 91专区| 中文在线字幕 | 日韩专区一区 | 一区二区视频 | 国内精品久久久久久久aa护士 | 2020精品极品国产色在线观看 |