摘要:也可以使用放置模態(tài)窗的切換狀態(tài)過渡部分結(jié)構(gòu)動(dòng)畫所有有趣的動(dòng)畫都是基于和可以給每一個(gè)實(shí)例一個(gè)特殊類動(dòng)畫部分結(jié)構(gòu)對于反彈對畫,如果使用的話,需要設(shè)置大量關(guān)鍵幀,動(dòng)畫有很多適合動(dòng)畫的易于使用的鉤子。
背景
內(nèi)置的
過渡和動(dòng)畫的不同:
過渡就是從一個(gè)狀態(tài)向另一個(gè)狀態(tài)插入值(從起始狀態(tài),到結(jié)束狀態(tài),再回來)
動(dòng)畫不同,可以在一個(gè)聲明中設(shè)置多個(gè)狀態(tài)(比如動(dòng)畫50%的位置設(shè)置一個(gè)關(guān)鍵幀,
然后在70%的位置,也可以設(shè)置延遲屬性實(shí)現(xiàn)復(fù)雜運(yùn)動(dòng))
CSS過渡
假設(shè)有一個(gè)簡單的模態(tài)窗。通過點(diǎn)擊按鈕顯示或隱藏模態(tài)窗。可以這樣做:
創(chuàng)建一個(gè)按鈕的vue實(shí)例,在實(shí)例中創(chuàng)建一個(gè)子組件,設(shè)置數(shù)據(jù)的狀態(tài)
這樣可以通過切換布爾值并添加事件處理實(shí)現(xiàn)子組件的顯示及隱藏。
可以使用v-if或者v-show來切換組件的可見性。也可以使用slot放置模態(tài)窗的切換狀態(tài)
過渡部分結(jié)構(gòu):
.fade-enter-active, .fade-leave-active {
transition: opacity 0.25s ease-out;
}
.fade-enter, .fade-leave-to {
opacity: 0;
}
CSS動(dòng)畫
所有有趣的動(dòng)畫都是基于enter-active和leave-active
可以給每一個(gè)實(shí)例一個(gè)特殊類
enter-active-class="toasty"
leave-active-class="bounceOut"
動(dòng)畫部分結(jié)構(gòu):name="ballmove"
enter-active-class="bouncein"
leave-active-class="rollout">
對于反彈對畫,如果使用CSS的話,需要設(shè)置大量關(guān)鍵幀,
@mixin ballb($yaxis: 0) {
transform: translate3d(0, $yaxis, 0);
}
@keyframes bouncein {
1% { @include ballb(-400px); }
20%, 40%, 60%, 80%, 95%, 99%, 100% { @include ballb() }
30% { @include ballb(-80px); }
50% { @include ballb(-40px); }
70% { @include ballb(-30px); }
90% { @include ballb(-15px); }
97% { @include ballb(-10px); }
}
.bouncein {
animation: bouncein 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}
.ballmove-enter {
@include ballb(-400px);
}
@keyframes rollout {
0% { transform: translate3d(0, 300px, 0); }
100% { transform: translate3d(1000px, 300px, 0); }
}
@keyframes ballroll {
0% { transform: rotate(0); }
100% { transform: rotate(1000deg); }
}
.rollout {
width: 60px;
height: 60px;
animation: rollout 2s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
div {
animation: ballroll 2s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
}
}
JS動(dòng)畫
有很多適合動(dòng)畫的易于使用的JS鉤子。所有的鉤子都會傳入el參數(shù),除了動(dòng)畫鉤子(enter和leave)
還會傳入done作為參數(shù)(它的作用就是告知Vue動(dòng)畫結(jié)束)
@enter="enter"
@after-enter="afterEnter"
@enter-cancelled="enterCancelled"
@before-Leave="beforeLeave"
@leave="leave"
@after-leave="afterLeave"
@leave-cancelled="leaveCancelled"
:css="false">
從最基本的層面看,這是開始動(dòng)畫和結(jié)束動(dòng)畫所需的,包括相關(guān)的方法:
@leave="leaveEl"
:css="false">
methods: {
enterEl(el, done) {
//entrance animation done();
},
leaveEl(el, done) {
//exit animation done();
},
}
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/106529.html
摘要:也可以使用放置模態(tài)窗的切換狀態(tài)過渡部分結(jié)構(gòu)動(dòng)畫所有有趣的動(dòng)畫都是基于和可以給每一個(gè)實(shí)例一個(gè)特殊類動(dòng)畫部分結(jié)構(gòu)對于反彈對畫,如果使用的話,需要設(shè)置大量關(guān)鍵幀,動(dòng)畫有很多適合動(dòng)畫的易于使用的鉤子。 背景內(nèi)置的和組件同時(shí)支持CSS和JS鉤子過渡和動(dòng)畫的不同:過渡就是從一個(gè)狀態(tài)向另一個(gè)狀態(tài)插入值(從起始狀態(tài),到結(jié)束狀態(tài),再回來)動(dòng)畫不同,可以在一個(gè)聲明中設(shè)置多個(gè)狀態(tài)(比如動(dòng)畫50%的位置設(shè)置一...
摘要:供用戶在相應(yīng)的階段對其進(jìn)行操作。我們像下面這樣使用這個(gè)指令大多數(shù)情況下,我們只需要使用與鉤子函數(shù)。里提供了函數(shù)的簡寫形式鉤子函數(shù)有兩個(gè)常用的參數(shù)和。其他用法與全局自定義指令一致。 一、vue生命周期 vue實(shí)例從創(chuàng)建到銷毀的過程,稱為生命周期,共有八個(gè)階段。 這八個(gè)階段里分別有一個(gè)叫做鉤子函數(shù)的實(shí)例選項(xiàng)。供用戶在相應(yīng)的階段對其進(jìn)行操作。 beforeCreate(){ //組件實(shí)例剛...
摘要:供用戶在相應(yīng)的階段對其進(jìn)行操作。我們像下面這樣使用這個(gè)指令大多數(shù)情況下,我們只需要使用與鉤子函數(shù)。里提供了函數(shù)的簡寫形式鉤子函數(shù)有兩個(gè)常用的參數(shù)和。其他用法與全局自定義指令一致。 一、vue生命周期 vue實(shí)例從創(chuàng)建到銷毀的過程,稱為生命周期,共有八個(gè)階段。 這八個(gè)階段里分別有一個(gè)叫做鉤子函數(shù)的實(shí)例選項(xiàng)。供用戶在相應(yīng)的階段對其進(jìn)行操作。 beforeCreate(){ //組件實(shí)例剛...
摘要:供用戶在相應(yīng)的階段對其進(jìn)行操作。我們像下面這樣使用這個(gè)指令大多數(shù)情況下,我們只需要使用與鉤子函數(shù)。里提供了函數(shù)的簡寫形式鉤子函數(shù)有兩個(gè)常用的參數(shù)和。其他用法與全局自定義指令一致。 一、vue生命周期 vue實(shí)例從創(chuàng)建到銷毀的過程,稱為生命周期,共有八個(gè)階段。 這八個(gè)階段里分別有一個(gè)叫做鉤子函數(shù)的實(shí)例選項(xiàng)。供用戶在相應(yīng)的階段對其進(jìn)行操作。 beforeCreate(){ //組件實(shí)例剛...
摘要:提供了兩種向組件傳遞參數(shù)的方式。子路由項(xiàng)路徑不要使用開頭,以開頭的嵌套路徑會被當(dāng)作根路徑。路由實(shí)例的方法這里學(xué)習(xí)兩個(gè)路由實(shí)例的方法和。實(shí)際上,是通過不同的將這些資源加載后打包,然后輸出打包后文件。 一、vue-router 1、簡介 我們經(jīng)常使用vue開發(fā)單頁面應(yīng)用程序(SPA)。在開發(fā)SPA過程中,路由是必不可少的部分,vue的官方推薦是vue-router。單頁面應(yīng)用程序看起來好像...
閱讀 2866·2021-11-22 11:56
閱讀 3567·2021-11-15 11:39
閱讀 910·2021-09-24 09:48
閱讀 771·2021-08-17 10:14
閱讀 1338·2019-08-30 15:55
閱讀 2765·2019-08-30 15:55
閱讀 1322·2019-08-30 15:44
閱讀 2792·2019-08-30 10:59