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

詳解vue過度效果與動畫transition使用示例

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

先看一個示例

在這里插入圖片描述

代碼如下

<template>
  <div align="center" style="margin-top: 100px;">
    <button @click="show= !show" >測試</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>

包裹了一個div組件,點擊按鈕實現(xiàn)動畫效果。一般搭配v-if、v-show、動態(tài)組件、組件根節(jié)點來使用。

transition鉤子函數(shù)

transition提供六個鉤子函數(shù),提供給我們在不同時機編寫相應(yīng)的動畫效果。以下是此六個鉤子函數(shù)執(zhí)行時機

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

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

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

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

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

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

自定義過渡類名

在頁面中有多個地方需要進行過渡效果,如果使用vue提供的默認那6個鉤子函數(shù),那么所有要過渡地方的過渡效果都是一樣的。如果需要在不同的場合定義不同的動畫效果,就需要我們自己定義專屬于各個過渡效果的類名。解決辦法給transition標簽添加name屬性,在name屬性中寫入自己的類名前綴。例如,那么在使用類名的時候就是這樣的:.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寫法,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使用

對列表進行過渡渲染時,就必須使用transition-group元素包裹。點擊列表中內(nèi)容,按照以下動畫移除,示例如下

在這里插入圖片描述

<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: '紅燒魚'
      },
      {
        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é)

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

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

相關(guān)文章

  • Vue Element前端應(yīng)用開發(fā)之echarts圖表

    Vue Element前端應(yīng)用開發(fā)之echarts圖表

    在我們做應(yīng)用系統(tǒng)的時候,往往都會涉及圖表的展示,綜合的圖表展示能夠給客戶帶來視覺的享受和數(shù)據(jù)直觀體驗,同時也是增強客戶認同感的舉措之一
    2021-05-05
  • Vue3?使用Element?Plus表格單選帶checkbox功能

    Vue3?使用Element?Plus表格單選帶checkbox功能

    這篇文章主要介紹了Vue3?使用Element?Plus表格單選帶checkbox,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • Vue 頁面狀態(tài)保持頁面間數(shù)據(jù)傳輸?shù)囊环N方法(推薦)

    Vue 頁面狀態(tài)保持頁面間數(shù)據(jù)傳輸?shù)囊环N方法(推薦)

    vue router給我們提供了兩種頁面間傳遞參數(shù)的方式,一種是動態(tài)路由匹配,一種是編程式導(dǎo)航,接下來通過本文給大家介紹Vue 頁面狀態(tài)保持頁面間數(shù)據(jù)傳輸?shù)囊环N方法,需要的朋友可以參考下
    2018-11-11
  • Vue2.0基于vue-cli+webpack Vuex的用法(實例講解)

    Vue2.0基于vue-cli+webpack Vuex的用法(實例講解)

    下面小編就為大家?guī)硪黄猇ue2.0基于vue-cli+webpack Vuex的用法(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • 在vue項目中使用element-ui的Upload上傳組件的示例

    在vue項目中使用element-ui的Upload上傳組件的示例

    本篇文章主要介紹了在vue項目中使用element-ui的Upload上傳組件的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • antd form表單中如何嵌套自定義組件

    antd form表單中如何嵌套自定義組件

    這篇文章主要介紹了antd form表單中如何嵌套自定義組件問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 詳解Vue3子組件向父組件傳遞消息

    詳解Vue3子組件向父組件傳遞消息

    這篇文章主要介紹了Vue3子組件向父組件傳遞消息,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • 淺析vue-router中params和query的區(qū)別

    淺析vue-router中params和query的區(qū)別

    這篇文章主要介紹了vue-router中params和query的區(qū)別,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • Django+Vue跨域環(huán)境配置詳解

    Django+Vue跨域環(huán)境配置詳解

    這篇文章主要介紹了Django+Vue跨域環(huán)境配置詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 如何巧用Vue緩存函數(shù)淺析

    如何巧用Vue緩存函數(shù)淺析

    有時候不希望已經(jīng)請求過的數(shù)據(jù),再次請求重復(fù)執(zhí)行刷新操作,我們就需要使用數(shù)據(jù)緩存,這篇文章主要給大家介紹了關(guān)于如何巧用Vue緩存函數(shù)的相關(guān)資料,需要的朋友可以參考下
    2021-09-09

最新評論