欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue3過(guò)渡動(dòng)畫(huà)的詳解

 更新時(shí)間:2022年02月13日 16:50:35   作者:賣菜的小白  
這篇文章主要為大家詳細(xì)介紹了vue3過(guò)渡動(dòng)畫(huà),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

一、vue中動(dòng)畫(huà)簡(jiǎn)單介紹

在vue中如果一些過(guò)程不存在動(dòng)畫(huà)效果,則表現(xiàn)出來(lái)的結(jié)果是比較生硬的。此時(shí)我們需要設(shè)置動(dòng)畫(huà)來(lái)使得頁(yè)面更加靈活。

在這里插入圖片描述

如上面代碼所示,我們的h1只是在消失和顯示來(lái)回切換,但是這樣效果生硬。
此時(shí)我們使用transition組件來(lái)實(shí)現(xiàn)動(dòng)畫(huà)效果。

二、vue的transition動(dòng)畫(huà)

在這里插入圖片描述

transition組件可以添加name屬性,注意name屬性值可以為class樣式的第一個(gè)字符串。上面例子會(huì)在出現(xiàn)和消失會(huì)展示出來(lái)opacity漸變的情況。

三、transition組件的實(shí)現(xiàn)原理

在這里插入圖片描述

上面的圖為在來(lái)回切換過(guò)程中,h1標(biāo)簽中的class的變化,我們可以看到在進(jìn)行漸變過(guò)程中,vue通過(guò)控制標(biāo)簽中的class的改變來(lái)實(shí)現(xiàn)動(dòng)畫(huà)效果。

具體流程如下所示

1、當(dāng)在transition全局組件中進(jìn)行dom插入或者刪除時(shí),此時(shí)vue會(huì)自動(dòng)檢測(cè)是否存在相關(guān)的css樣式,如果存在,則在適當(dāng)
的時(shí)機(jī)將class樣式添加或者刪除。
2、如果transition提供生命周期鉤子,那么該鉤子會(huì)在適當(dāng)?shù)臅r(shí)候進(jìn)行回調(diào)。
3、如果不存在css樣式也不存在生命周期鉤子,那么dom插入和刪除都會(huì)立即執(zhí)行。

四、transition過(guò)渡動(dòng)畫(huà)的class屬性

v-enter-from:定義進(jìn)入過(guò)渡的開(kāi)始狀態(tài)。在元素被插入之前生效,在元素被插入之后的下一幀移除
v-enter-active:定義進(jìn)入過(guò)渡生效時(shí)的狀態(tài)。在整個(gè)進(jìn)入過(guò)渡的階段中應(yīng)用,在元素被插入之前生效,在過(guò)渡/動(dòng)
畫(huà)完成之后移除。這個(gè)類可以被用來(lái)定義進(jìn)入過(guò)渡的過(guò)程時(shí)間,延遲和曲線函數(shù)
v-enter-to:定義進(jìn)入過(guò)渡的結(jié)束狀態(tài)。在元素被插入之后下一幀生效 (與此同時(shí) v-enter-from 被移除),在過(guò)渡/
動(dòng)畫(huà)完成之后移除。
v-leave-from:定義離開(kāi)過(guò)渡的開(kāi)始狀態(tài)。在離開(kāi)過(guò)渡被觸發(fā)時(shí)立刻生效,下一幀被移除.
v-leave-active:定義離開(kāi)過(guò)渡生效時(shí)的狀態(tài)。在整個(gè)離開(kāi)過(guò)渡的階段中應(yīng)用,在離開(kāi)過(guò)渡被觸發(fā)時(shí)立刻生效,在
過(guò)渡/動(dòng)畫(huà)完成之后移除。這個(gè)類可以被用來(lái)定義離開(kāi)過(guò)渡的過(guò)程時(shí)間,延遲和曲線函數(shù)。
v-leave-to:離開(kāi)過(guò)渡的結(jié)束狀態(tài)。在離開(kāi)過(guò)渡被觸發(fā)之后下一幀生效 (與此同時(shí) v-leave-from 被刪除),在過(guò)渡/
動(dòng)畫(huà)完成之后移除

五、class的添加時(shí)機(jī)和命名規(guī)則

在這里插入圖片描述

如果在transition中不存在,使用v-代替,如果存在name屬性,則使用名稱why-enter-active。

六、transition過(guò)渡css動(dòng)畫(huà)

在這里插入圖片描述

如圖所示使用只需要使用enter-active,和leave-active設(shè)置相關(guān)的動(dòng)畫(huà)樣式。

思考:如果出現(xiàn)一個(gè)問(wèn)題:就是我們?cè)谝粋€(gè)動(dòng)畫(huà)中同時(shí)使用animation和transition,時(shí)間不一致該如何做.

在這里插入圖片描述

如上圖所示,我們?cè)O(shè)置動(dòng)畫(huà)和過(guò)渡效果,但是兩者時(shí)間不一致,此時(shí)我們可以設(shè)置type屬性,其值一個(gè)為animation另一個(gè)為transition,設(shè)置該屬性時(shí),來(lái)告知transition組件監(jiān)聽(tīng)屬性的類型。

七、顯示的指定動(dòng)畫(huà)的時(shí)間

在這里插入圖片描述

可以在transition組件上,設(shè)置duration屬性,其值可以為number類型,也可以是Object類型。這樣設(shè)置時(shí)間就相當(dāng)于強(qiáng)制設(shè)置時(shí)間,無(wú)論動(dòng)畫(huà)是否執(zhí)行完畢,都會(huì)當(dāng)duration到達(dá)時(shí)間后,顯示最終效果。

八、transition的過(guò)渡模式

在這里插入圖片描述

可以這樣理解:如上述代碼所示,我們將使用v-ifv-else進(jìn)行兩種狀態(tài)的設(shè)置。如果不存在mode屬性的話,則兩個(gè)狀態(tài)都會(huì)同時(shí)執(zhí)行動(dòng)畫(huà),導(dǎo)致用戶體驗(yàn)不友好,此時(shí)我們?cè)O(shè)置mode可以設(shè)置兩種模式out-inin-out,out-in表現(xiàn)為去除的標(biāo)簽元素先執(zhí)行,然后再執(zhí)行顯示的。in-out則反之。

九、動(dòng)態(tài)組件的切換

在這里插入圖片描述

組件的動(dòng)畫(huà)使用和一般標(biāo)簽的動(dòng)畫(huà)使用過(guò)程是一樣的。

十、appear初次渲染

在這里插入圖片描述

我們可以使用appear來(lái)設(shè)置初次渲染的動(dòng)畫(huà)效果。

十一、animate.css

animate.css網(wǎng)站

如果我們?cè)陂_(kāi)發(fā)中使用的動(dòng)畫(huà)都是自己寫的,這樣的效率比較低下,此時(shí)我們存在第三方庫(kù),其中存在一些動(dòng)畫(huà),我們可以使用。

使用步驟:

一、安裝 npm install animate.css

二、導(dǎo)入animate.css樣式

三、使用animate提供的動(dòng)畫(huà)或者是類

使用css樣式

在這里插入圖片描述

使用類

在這里插入圖片描述

animate__animated是一些配置信息樣式。如圖所示就是一些時(shí)間,模式默認(rèn)設(shè)置,所以該類是必須加上的,animate__..才是需要添加的樣式。

在這里插入圖片描述

十二、gsap庫(kù)

在這里插入圖片描述

transition中的一些生命周期函數(shù),如上圖所示。

在執(zhí)行過(guò)渡動(dòng)畫(huà)時(shí),會(huì)進(jìn)行done()回調(diào),否則會(huì)進(jìn)行同步,過(guò)渡會(huì)立即完成。

:css:false:表示vue會(huì)忽略css檢測(cè),除了性能更高以外,還避免過(guò)渡過(guò)程中css規(guī)則影響。一般常用的函數(shù)有enter和leave函數(shù)。

在這里插入圖片描述

gsap的詳細(xì)的參數(shù)設(shè)置

在這里插入圖片描述

十三、gsap實(shí)現(xiàn)數(shù)字變化

在這里插入圖片描述

十四、實(shí)現(xiàn)列表的過(guò)渡

因?yàn)槲覀冊(cè)谑褂?code>transition組件時(shí),其中包含的是單個(gè)組件,如果我們想要在其中包含多個(gè)組件,那么該如何去做?此時(shí)我們有一個(gè)標(biāo)簽transiton-group全局組件,我們可以在其中設(shè)置多個(gè)標(biāo)簽內(nèi)容。

transition-group具有如下特點(diǎn):

1、默認(rèn)情況下不會(huì)渲染一個(gè)元素的包裹器,但是可以指定以一個(gè)指定的標(biāo)簽進(jìn)行渲染。
2、過(guò)渡模式不可用,因?yàn)槲覀儾磺袚Q特定的元素
3、內(nèi)部元素總是需要提供一個(gè)key:attribute的值
4、css過(guò)渡樣式類,會(huì)作用在內(nèi)部元素中,而不是外部標(biāo)簽上。

在這里插入圖片描述

十五、列表的交錯(cuò)過(guò)渡案例二

在這里插入圖片描述

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!  

相關(guān)文章

  • 淺談Vue.nextTick 的實(shí)現(xiàn)方法

    淺談Vue.nextTick 的實(shí)現(xiàn)方法

    本篇文章主要介紹了Vue.nextTick 的實(shí)現(xiàn)方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • Vue3+X6流程圖實(shí)現(xiàn)數(shù)據(jù)雙向綁定詳解

    Vue3+X6流程圖實(shí)現(xiàn)數(shù)據(jù)雙向綁定詳解

    這篇文章主要為大家詳細(xì)介紹了Vue3如何結(jié)合X6流程圖實(shí)現(xiàn)數(shù)據(jù)雙向綁定,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • Vue3 diff算法之雙端diff算法詳解

    Vue3 diff算法之雙端diff算法詳解

    雙端Diff在可以解決更多簡(jiǎn)單Diff算法處理不了的場(chǎng)景,且比簡(jiǎn)單Diff算法性能更好。本文將通過(guò)示例為大家詳細(xì)講講雙端diff算法的實(shí)現(xiàn)與使用,需要的可以參考一下
    2022-09-09
  • Vue源碼解讀之Component組件注冊(cè)的實(shí)現(xiàn)

    Vue源碼解讀之Component組件注冊(cè)的實(shí)現(xiàn)

    這篇文章主要介紹了Vue源碼解讀之Component組件注冊(cè)的實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • vue?el-table中使用el-select選中后無(wú)效的解決

    vue?el-table中使用el-select選中后無(wú)效的解決

    這篇文章主要介紹了vue?el-table中使用el-select選中后無(wú)效的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue實(shí)踐---根據(jù)不同環(huán)境,自動(dòng)轉(zhuǎn)換請(qǐng)求的url地址操作

    vue實(shí)踐---根據(jù)不同環(huán)境,自動(dòng)轉(zhuǎn)換請(qǐng)求的url地址操作

    這篇文章主要介紹了vue實(shí)踐---根據(jù)不同環(huán)境,自動(dòng)轉(zhuǎn)換請(qǐng)求的url地址操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Vue分頁(yè)組件實(shí)現(xiàn)過(guò)程詳解

    Vue分頁(yè)組件實(shí)現(xiàn)過(guò)程詳解

    Web應(yīng)用程序中資源分頁(yè)不僅對(duì)性能很有幫助,而且從用戶體驗(yàn)的角度來(lái)說(shuō)也是非常有用的。在這篇文章中,將了解如何使用Vue創(chuàng)建動(dòng)態(tài)和可用的分頁(yè)組件
    2022-12-12
  • Vue項(xiàng)目打包部署到apache服務(wù)器的方法步驟

    Vue項(xiàng)目打包部署到apache服務(wù)器的方法步驟

    這篇文章主要介紹了Vue項(xiàng)目打包部署到apache服務(wù)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • vue中監(jiān)聽(tīng)路由參數(shù)的變化及方法

    vue中監(jiān)聽(tīng)路由參數(shù)的變化及方法

    這篇文章主要介紹了vue中監(jiān)聽(tīng)路由參數(shù)的變化,給大家介紹了vue中監(jiān)聽(tīng)路由參數(shù)變化的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-12-12
  • vue中如何將日期轉(zhuǎn)換為指定的格式

    vue中如何將日期轉(zhuǎn)換為指定的格式

    這篇文章主要介紹了vue中如何將日期轉(zhuǎn)換為指定的格式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10

最新評(píng)論