vue內(nèi)置組件transition簡單原理圖文詳解(小結(jié))
基本概念
Vue 在插入、更新或者移除 DOM 時(shí),提供多種不同方式的應(yīng)用過渡效果
- 在 CSS 過渡和動(dòng)畫中自動(dòng)應(yīng)用 class
- 可以配合使用第三方 CSS 動(dòng)畫庫,如 Animate.css
- 在過渡鉤子函數(shù)中使用 JavaScript 直接操作 DOM
- 可以配合使用第三方 JavaScript 動(dòng)畫庫,如 Velocity.js
簡單用法
- 用
v-if/v-show
控制顯示隱藏,使用transition 組件控制其變化過程 - 一個(gè)頁面子組件 router-view 的消失隱藏,使用transition 組件控制其變化過程
<template> // 子組件 <transition name="fade1"> <router-view></router-view> </transition> // if/show控制 <transition name="fade2"> <div v-show="isTage"></div> </transition> </template>
類名介紹
v-enter
:定義進(jìn)入過渡的開始狀態(tài)。在元素被插入之前生效,在元素被插入之后的下一幀移除。v-enter-active
:定義進(jìn)入過渡生效時(shí)的狀態(tài)。在整個(gè)進(jìn)入過渡的階段中應(yīng)用,在元素被插入之前生效,在過渡/動(dòng)畫完成之后移除。這個(gè)類可以被用來定義進(jìn)入過渡的過程時(shí)間,延遲和曲線函數(shù)。v-enter-to
: 2.1.8版及以上 定義進(jìn)入過渡的結(jié)束狀態(tài)。在元素被插入之后下一幀生效 (與此同時(shí)v-enter
被移除),在過渡/動(dòng)畫完成之后移除。v-leave
: 定義離開過渡的開始狀態(tài)。在離開過渡被觸發(fā)時(shí)立刻生效,下一幀被移除。v-leave-active
:定義離開過渡生效時(shí)的狀態(tài)。在整個(gè)離開過渡的階段中應(yīng)用,在離開過渡被觸發(fā)時(shí)立刻生效,在過渡/動(dòng)畫完成之后移除。這個(gè)類可以被用來定義離開過渡的過程時(shí)間,延遲和曲線函數(shù)。v-leave-to
: 2.1.8版及以上 定義離開過渡的結(jié)束狀態(tài)。在離開過渡被觸發(fā)之后下一幀生效 (與此同時(shí)v-leave
被刪除),在過渡/動(dòng)畫完成之后移除。
以上為vuejs官網(wǎng)介紹 下面我平時(shí)記載的筆記,結(jié)合圖文,更容易理解些
變化原理
動(dòng)畫流程出現(xiàn):
開始前一幀: 點(diǎn)擊出現(xiàn)動(dòng)畫,元素由none變?yōu)閎lock,動(dòng)畫開始前一幀,插入 opacity:0
屬性 “1” ,和監(jiān)聽opacity屬性變化時(shí)間為3s “2”
動(dòng)畫第二幀: opacity:0
,屬性 “1” 去除,引起**“2”**監(jiān)聽執(zhí)行時(shí)間變化
動(dòng)畫最后一幀: 動(dòng)畫結(jié)束,去除所有
動(dòng)畫流程消失:
開始前一幀: 點(diǎn)擊消失動(dòng)畫,元素由block變?yōu)閚one,動(dòng)畫開始前一幀,只插入監(jiān)聽opacity屬性變化時(shí)間為3s “4”
動(dòng)畫第二幀: 插入, “3” 屬性opacity:0引起 “2” 監(jiān)聽執(zhí)行事件變化
動(dòng)畫最后一幀: 動(dòng)畫結(jié)束,去除所有
平時(shí)功能加個(gè)過渡動(dòng)畫看著兩個(gè)圖足夠了
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- vue內(nèi)置組件keep-alive事件動(dòng)態(tài)緩存實(shí)例
- vue中keep-alive內(nèi)置組件緩存的實(shí)例代碼
- vue.js內(nèi)置組件之keep-alive組件使用
- vue內(nèi)置組件component--通過is屬性動(dòng)態(tài)渲染組件操作
- vue 自定義 select內(nèi)置組件
- vue keep-alive的簡單總結(jié)
- vue緩存之keep-alive的理解和應(yīng)用詳解
- 解決Vue keep-alive 調(diào)用 $destory() 頁面不再被緩存的情況
- vue keep-alive實(shí)現(xiàn)多組件嵌套中個(gè)別組件存活不銷毀的操作
- vue使用keep-alive實(shí)現(xiàn)組件切換時(shí)保存原組件數(shù)據(jù)方法
- Vue 內(nèi)置組件keep-alive的使用示例
相關(guān)文章
解決vue中props對(duì)象中設(shè)置多個(gè)默認(rèn)值的問題
props中設(shè)置了默認(rèn)值,但是獲取時(shí)(獲取父頁面沒有傳的屬性) 打印出來是undefined,所以本文給大家介紹了解決vue中props對(duì)象中設(shè)置多個(gè)默認(rèn)值的問題,需要的朋友可以參考下2024-04-04vue后臺(tái)管理之動(dòng)態(tài)加載路由的方法
這篇文章主要介紹了vue后臺(tái)管理之動(dòng)態(tài)加載路由的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08el-checkbox-group?的v-model無法綁定對(duì)象數(shù)組的問題解決
elementUI官方文檔中el-checkbox-group組件綁定的都為一維數(shù)組,本文主要介紹了解決el-checkbox-group?的v-model無法綁定對(duì)象數(shù)組,感興趣的可以了解一下2023-05-05Vue3?企業(yè)級(jí)組件庫框架搭建?pnpm?monorepo實(shí)戰(zhàn)示例
這篇文章主要為大家介紹了Vue3?企業(yè)級(jí)組件庫框架搭建?pnpm?monorepo實(shí)戰(zhàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11vue3中element-plus?Upload上傳文件代碼示例
這篇文章主要介紹了vue3中element-plus?Upload上傳文件的相關(guān)資料,在時(shí)間開發(fā)中上傳文件是經(jīng)常遇到的一個(gè)需求,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-08-08