最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解vue過(guò)度效果與動(dòng)畫(huà)transition使用示例

 更新時(shí)間:2021年10月09日 16:33:31   作者:guoyp2126  
Vue 在插入、更新或者移除 DOM 時(shí),提供多種不同方式的應(yīng)用過(guò)渡效果,Vue 提供了內(nèi)置的過(guò)渡封裝組件transition,該組件用于包裹要實(shí)現(xiàn)過(guò)渡效果的組件

先看一個(gè)示例

在這里插入圖片描述

代碼如下

<template>
  <div align="center" style="margin-top: 100px;">
    <button @click="show= !show" >測(cè)試</button>
    <transition>
      <div v-if="show">
        <p>這是一段文字</p>
      </div>
    </transition>
  </div>
</template>
<script>
export default {
  name: 'transitionTest',
  data () {
    return {
      show: true
    }
  }
}
</script>
<style scoped>
    .v-enter-active, .v-leave-active {
    transition: all .5s ;
    }
    .v-enter {
    transform: translateY(50px);
    opacity: 0;
    }
    .v-leave-active {
    transform: translateY(50px);
    opacity: .5;
    }
</style>

包裹了一個(gè)div組件,點(diǎn)擊按鈕實(shí)現(xiàn)動(dòng)畫(huà)效果。一般搭配v-if、v-show、動(dòng)態(tài)組件、組件根節(jié)點(diǎn)來(lái)使用。

transition鉤子函數(shù)

transition提供六個(gè)鉤子函數(shù),提供給我們?cè)诓煌瑫r(shí)機(jī)編寫(xiě)相應(yīng)的動(dòng)畫(huà)效果。以下是此六個(gè)鉤子函數(shù)執(zhí)行時(shí)機(jī)

1.v-enter:進(jìn)入過(guò)渡開(kāi)始狀態(tài)。在元素被插入之前生效,在元素被插入之后的下一幀移除。

2.v-enter-active:進(jìn)入過(guò)渡生效時(shí)的狀態(tài)。這個(gè)類(lèi)可以被用來(lái)定義進(jìn)入過(guò)渡的過(guò)程時(shí)間,延遲和曲線(xiàn)函數(shù)。

3.v-enter-to:進(jìn)入過(guò)渡的結(jié)束狀態(tài)。在元素被插入之后下一幀生效 (與此同時(shí) v-enter 被移除),在過(guò)渡/動(dòng)畫(huà)完成之后移除。

4.v-leave: 離開(kāi)過(guò)渡的開(kāi)始狀態(tài)。在離開(kāi)過(guò)渡被觸發(fā)時(shí)立刻生效,下一幀被移除。

5.v-leave-active:離開(kāi)過(guò)渡生效時(shí)的狀態(tài)。這個(gè)類(lèi)可以被用來(lái)定義離開(kāi)過(guò)渡的過(guò)程時(shí)間,延遲和曲線(xiàn)函數(shù)。

6.v-leave-to:離開(kāi)過(guò)渡的結(jié)束狀態(tài)。在離開(kāi)過(guò)渡被觸發(fā)之后下一幀生效 (與此同時(shí) v-leave 被刪除),在過(guò)渡/動(dòng)畫(huà)完成之后移除

自定義過(guò)渡類(lèi)名

在頁(yè)面中有多個(gè)地方需要進(jìn)行過(guò)渡效果,如果使用vue提供的默認(rèn)那6個(gè)鉤子函數(shù),那么所有要過(guò)渡地方的過(guò)渡效果都是一樣的。如果需要在不同的場(chǎng)合定義不同的動(dòng)畫(huà)效果,就需要我們自己定義專(zhuān)屬于各個(gè)過(guò)渡效果的類(lèi)名。解決辦法給transition標(biāo)簽添加name屬性,在name屬性中寫(xiě)入自己的類(lèi)名前綴。例如,那么在使用類(lèi)名的時(shí)候就是這樣的:.my-trans-leave、.my-trans-enter-to。如:

    <transition name="my-trans" mode="out-in">
       <router-view v-if="!$route.meta.keepAlive"></router-view>
    </transition>

style寫(xiě)法,my-trans是“.my-trans-enter-active”的前綴

<style>
  .my-trans-enter-active,
  .my-trans-leave-active {
    transition: all .2s;
    opacity: 1;
  }
  .my-trans-enter {
    transition: all .2s;
    opacity: 0;
  }
  .my-trans-leave-to {
    transition: all .2s;
    opacity: 0;
  }  
</style>

transition-group使用

對(duì)列表進(jìn)行過(guò)渡渲染時(shí),就必須使用transition-group元素包裹。點(diǎn)擊列表中內(nèi)容,按照以下動(dòng)畫(huà)移除,示例如下

在這里插入圖片描述

<template>
  <div class="main_css">
    <transition-group name="slide">
      <li v-for="(item,i) in list" :key="item.id" @click="del(i)">
        {{ item.id }} --- {{ item.name }}
      </li>
    </transition-group>
  </div>
</template>
<script>
export default {
  name: 'transitionGroupTest',
  data () {
    return {
      list: [{
        id: 1,
        name: '紅燒魚(yú)'
      },
      {
        id: 2,
        name: '炒土豆'
      },
      {
        id: 3,
        name: '燒茄子'
      }
      ]
    }
  },
  methods: {
    del (i) {
      this.list.splice(i, 1)
    }
  }
}
</script>
<style scoped>
  .main_css {
    margin-left: 50px;
    margin-top: 50px;
  }
  .slide-enter-active {
    transition: all .5s linear;
  }
  .slide-leave-active {
    transition: all .1s linear;
  }
  .slide-enter {
    transform: translateX(-100%);
    opacity: 0;
  }
  .slide-leave-to {
    transform: translateX(110%);
    opacity: 0;
  }
</style>

小結(jié)

過(guò)度與動(dòng)畫(huà),使用transition標(biāo)簽完成,同時(shí)提供6個(gè)鉤子函數(shù)。全局動(dòng)畫(huà)在app.vue中,在router-view組件中包裹transition,如:;給transition標(biāo)簽添加name屬性定義過(guò)渡類(lèi)名,實(shí)現(xiàn)局部變化。

以上就是詳解vue過(guò)度與動(dòng)畫(huà)transition使用示例的詳細(xì)內(nèi)容,更多關(guān)于vue過(guò)度與動(dòng)畫(huà)transition的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解Vue 方法與事件處理器

    詳解Vue 方法與事件處理器

    本篇文章主要介紹了詳解Vue 方法與事件處理器 ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • 使用Vue組件實(shí)現(xiàn)一個(gè)簡(jiǎn)單彈窗效果

    使用Vue組件實(shí)現(xiàn)一個(gè)簡(jiǎn)單彈窗效果

    這篇文章主要介紹了使用Vue組件實(shí)現(xiàn)一個(gè)簡(jiǎn)單彈窗效果,本文主要內(nèi)容會(huì)涉及到彈窗遮罩的實(shí)現(xiàn), slot 插槽的使用方式,props 、 $emit 傳參,具體組件代碼也傳上去了。需要的朋友可以參考下
    2018-04-04
  • Swiper在Vue2中的簡(jiǎn)單使用方法

    Swiper在Vue2中的簡(jiǎn)單使用方法

    這篇文章主要給大家介紹了關(guān)于Swiper在Vue2中的簡(jiǎn)單使用方法,swiper是一款現(xiàn)代化的移動(dòng)端輪播組件,可以在Vue中輕松使用,文中通過(guò)代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • vue-auto-focus: 控制自動(dòng)聚焦行為的 vue 指令方法

    vue-auto-focus: 控制自動(dòng)聚焦行為的 vue 指令方法

    今天小編就為大家分享一篇vue-auto-focus: 控制自動(dòng)聚焦行為的 vue 指令方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • Vue mock.js模擬數(shù)據(jù)實(shí)現(xiàn)首頁(yè)導(dǎo)航與左側(cè)菜單功能

    Vue mock.js模擬數(shù)據(jù)實(shí)現(xiàn)首頁(yè)導(dǎo)航與左側(cè)菜單功能

    這篇文章主要介紹了Vue mock.js模擬數(shù)據(jù)實(shí)現(xiàn)首頁(yè)導(dǎo)航與左側(cè)菜單功能,mockjs是用來(lái)模擬產(chǎn)生一些虛擬的數(shù)據(jù),可以讓前端在后端接口還沒(méi)有開(kāi)發(fā)出來(lái)時(shí)獨(dú)立開(kāi)發(fā)。我們可以使用真實(shí)的url,mockjs可以攔截ajax請(qǐng)求,返回設(shè)定好的數(shù)據(jù)
    2022-09-09
  • vue keep-alive 動(dòng)態(tài)刪除組件緩存的例子

    vue keep-alive 動(dòng)態(tài)刪除組件緩存的例子

    今天小編就為大家分享一篇vue keep-alive 動(dòng)態(tài)刪除組件緩存的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • vue實(shí)現(xiàn)簡(jiǎn)易選項(xiàng)卡功能

    vue實(shí)現(xiàn)簡(jiǎn)易選項(xiàng)卡功能

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)簡(jiǎn)易選項(xiàng)卡功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • vue?elementUi中的tabs標(biāo)簽頁(yè)使用教程

    vue?elementUi中的tabs標(biāo)簽頁(yè)使用教程

    Tabs 組件提供了選項(xiàng)卡功能,默認(rèn)選中第一個(gè)標(biāo)簽頁(yè),下面這篇文章主要給大家介紹了關(guān)于vue?elementUi中的tabs標(biāo)簽頁(yè)使用的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • vuejs選中當(dāng)前樣式active的實(shí)例

    vuejs選中當(dāng)前樣式active的實(shí)例

    今天小編就為大家分享一篇vuejs選中當(dāng)前樣式active的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • 利用Electron簡(jiǎn)單擼一個(gè)Markdown編輯器的方法

    利用Electron簡(jiǎn)單擼一個(gè)Markdown編輯器的方法

    這篇文章主要介紹了利用Electron簡(jiǎn)單擼一個(gè)Markdown編輯器的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06

最新評(píng)論

西贡区| 弥勒县| 开化县| 柘荣县| 岑溪市| 武宣县| 金乡县| 丹江口市| 闻喜县| 屯昌县| 江都市| 韩城市| 长泰县| 青铜峡市| 柞水县| 广宗县| 荣成市| 北海市| 苗栗市| 托里县| 台东县| 顺义区| 精河县| 文安县| 西乌珠穆沁旗| 岫岩| 梓潼县| 大埔县| 仙游县| 乌海市| 泸西县| 崇义县| 唐山市| 敖汉旗| 屯昌县| 临夏市| 崇义县| 余庆县| 江城| 武冈市| 大姚县|