亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue3 appear 失效的問題及如何使用 appear

 更新時間:2023年10月07日 10:37:45   作者:Fuck_C++  
appear 是一個在元素默認(rèn)被顯示的情況下 調(diào)用進(jìn)入動畫效果,使得元素在這種初次渲染情況下 執(zhí)行進(jìn)入動畫的屬性,最近在學(xué)習(xí)vue3的動畫時遇到appear無法生效的問題,本文給大家詳細(xì)講解,感興趣的朋友一起看看吧

最近在學(xué)習(xí) vue3 的動畫時遇到 appear 無法生效的問題

問題的具體表現(xiàn):

看以下代碼,按理應(yīng)該來說,如果我們設(shè)置 fuct-appear-from,fuct-appea-active 后在元素初始出現(xiàn)時應(yīng)該會有一個效果

html

<Transition name="fuct" appear>
  <div class="doc" v-if="show"></div>
</Transition>

css

/* 初次效果 */
.fuct-appear-active{
  transition: all .3s ease-in-out;
}
.fuct-appear-from{
  transform: translateY(7em);
}
/* 進(jìn)入與離開的動畫 */
.doc{
  width:50px;
  height:50px;
  background-color: red;
}
.fuct-enter-from,
.fuct-leave-to{
  transform: translateX(2em);
}
.fuct-enter-active,
.fuct-leave-active{
  transition: all .5s ease-out;
}

如果你和我一樣設(shè)置了上面這樣的屬性與樣式,說明你和我一樣沒有理解這個 appear " 初次 "的意思

先說一下代碼中的語法錯誤,首先不存在 *-appear-from 等這樣的動畫設(shè)置,只有 appear-active-class 的自定義動畫屬性,這也是我一直認(rèn)為動畫不生效的原因

其他問題與疑問 的解決

什么是" 初次 " ?

  首先要搞明白這個初次出現(xiàn)的問題,這個初次指的是頁面在 默認(rèn) 渲染的情況下的初次 ,簡單來說就是 這個元素是默認(rèn)顯示的,即 v-if="show" 中 show默認(rèn)為 true. 如果默認(rèn)是不顯示的元素,appear 設(shè)置后也是無效果的

初次動畫是什么?

  在解決初次動畫后,有的人認(rèn)為這個初次動畫應(yīng)該特殊一點 所以會 想應(yīng)該有 *-appear-from 的css設(shè)定,但是其實沒有, 我也不知道為什么我的VScode彈出了提示,其實這個初次動畫調(diào)用的是 進(jìn)入動畫即 *-enter-from 系列動畫,

   因為默認(rèn)情況下 如果元素默認(rèn)顯示的情況下是不會調(diào)用 進(jìn)入動畫元素的,設(shè)置appear 后 則會默認(rèn)渲染時 執(zhí)行 進(jìn)入動畫 ;

可運行的調(diào)試代碼,嘗試刪除內(nèi)部的 appear 刷新頁面,你就懂了

<template>
    <button @click="show=!show">click</button>
<Transition name="fuct" appear-from-c>
  <div class="doc" v-if="show"></div>
</Transition>
</template>
<script setup>
import { ref } from 'vue'
const show=ref(true)
</script>
<style>
/* 初次效果 */
fo-appear-active{
  transition: all .3s ease-in-out;
}
fo-appear-from{
  transform: translateY(7em);
}
/* 進(jìn)入與離開的動畫 */
.doc{
  width:50px;
  height:50px;
  background-color: red;
}
.fuct-enter-from,
.fuct-leave-to{
  transform: translateX(2em);
} 
.fuct-enter-active,
.fuct-leave-active{
  transition: all .5s ease-out;
}
</style>

總結(jié)

  appear 是一個在元素默認(rèn)被顯示的情況下 調(diào)用進(jìn)入動畫效果,使得元素在這種初次渲染情況下 執(zhí)行進(jìn)入動畫的屬性

    當(dāng)然如果你設(shè)定了 appear-from-class 等屬性 則會與 進(jìn)入動畫同時執(zhí)行

再提供一個是 class 自定義初次動畫的版本,你會發(fā)現(xiàn)appear 無論如何都會調(diào)用 enter 進(jìn)入動畫,除非你不設(shè)置 enter 動畫

<script setup>
import {ref} from 'vue'
const show=ref(true);
</script>
<template>
<button @click="show = !show">Ckick</button>
<Transition name="fuct" appear
appear-active-class="active"
appear-to-class="to"
>
  <div class="doc" v-if="show"></div>
</Transition>
</template>
<style>
.active{
  transition: all .3s ease-in-out;
}
.to{
  transform: translateY(7em);
}
.doc{
  width:50px;
  height:50px;
  background-color: red;
}
.fuct-enter-from,
.fuct-leave-to{
  transform: translateX(2em);
}
.fuct-enter-active,
.fuct-leave-active,
.fuct-appear-active{
  transition: all .5s ease-out;
}
.fuct-appear-from{
  transform: translateY(6em);
}
</style>

如何使用 appear

  在閱讀本節(jié)前請一定查看了 失效問題的總結(jié)部分

  appear 雖然沒有設(shè)定 *-appear-from 的css 但是保留了 appear-from-class自定義屬性

    對于沒有其他動畫需求的內(nèi)容,只需要一個進(jìn)入的特殊動畫,我們只需要設(shè)置以下 自定義動畫屬性即可,appear-active- 或者 使用enter動畫,只設(shè)置appear 只是容易搞混,而且enter是會被重復(fù)使用的

  這個屬性主要還是對頁面動畫的一種補(bǔ)充,對于一開始在頁面顯示的元素,提供一種更加平滑的顯示,使用 enter 與 class 動畫形式以實際環(huán)境為準(zhǔn)

  在enter 與 class 同時設(shè)定時

    enter與class會同時運行

    enter與class 有動畫內(nèi)容沖突時 enter的應(yīng)用級別高于 class 的自定義動畫,這甚至?xí)?class的全部動畫失效

到此這篇關(guān)于Vue3 appear 失效 如何使用 appear的文章就介紹到這了,更多相關(guān)Vue3 appear 失效內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • 超簡單易懂的vue組件傳值

    超簡單易懂的vue組件傳值

    這篇文章主要為大家詳細(xì)介紹了vue組件傳值,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Vue proxyTable配置多個接口地址,解決跨域的問題

    Vue proxyTable配置多個接口地址,解決跨域的問題

    這篇文章主要介紹了Vue proxyTable配置多個接口地址,解決跨域的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • vue 虛擬DOM的原理

    vue 虛擬DOM的原理

    這篇文章主要介紹了vue 虛擬DOM的原理,幫助大家更好的理解和學(xué)習(xí)vue,感興趣的朋友可以了解下
    2020-10-10
  • vue實現(xiàn)無縫輪播效果(跑馬燈)

    vue實現(xiàn)無縫輪播效果(跑馬燈)

    這篇文章主要為大家詳細(xì)介紹了vue實現(xiàn)無縫輪播效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • vue-router中query取值的坑及解決

    vue-router中query取值的坑及解決

    這篇文章主要介紹了vue-router中query取值的坑及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 一文搞明白vue開發(fā)者vite多環(huán)境配置

    一文搞明白vue開發(fā)者vite多環(huán)境配置

    Vue是一款流行的JavaScript框架,用于開發(fā)動態(tài)單頁應(yīng)用程序,本地安裝和環(huán)境配置是學(xué)習(xí)和使用Vue的第一步,下面這篇文章主要給大家介紹了關(guān)于vue開發(fā)者vite多環(huán)境配置的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • vue使用axios導(dǎo)出后臺返回的文件流為excel表格詳解

    vue使用axios導(dǎo)出后臺返回的文件流為excel表格詳解

    這篇文章主要介紹了vue使用axios導(dǎo)出后臺返回的文件流為excel表格方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Vue3配置bem樣式架構(gòu)的代碼詳解

    Vue3配置bem樣式架構(gòu)的代碼詳解

    BEM是一種前端命名方法論,主要是針對CSS,意思是塊(Block)、元素(Element)、修飾符(Modifier)的簡寫,這種命名方法讓CSS便于統(tǒng)一團(tuán)隊開發(fā)規(guī)范和方便維護(hù),本文給大家介紹了Vue3配置bem樣式架構(gòu),需要的朋友可以參考下
    2024-10-10
  • vue.set向?qū)ο罄镌黾佣鄬訑?shù)組屬性不生效問題及解決

    vue.set向?qū)ο罄镌黾佣鄬訑?shù)組屬性不生效問題及解決

    這篇文章主要介紹了vue.set向?qū)ο罄镌黾佣鄬訑?shù)組屬性不生效問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue3中配置文件vue.config.js不生效的解決辦法

    vue3中配置文件vue.config.js不生效的解決辦法

    這篇文章主要介紹了vue3中配置文件vue.config.js不生效的解決辦法,文中通過代碼示例講解的非常詳細(xì),對大家解決問題有一定的幫助,需要的朋友可以參考下
    2024-05-05

最新評論