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

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

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

最近在學習 vue3 的動畫時遇到 appear 無法生效的問題

問題的具體表現:

看以下代碼,按理應該來說,如果我們設置 fuct-appear-from,fuct-appea-active 后在元素初始出現時應該會有一個效果

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);
}
/* 進入與離開的動畫 */
.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;
}

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

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

其他問題與疑問 的解決

什么是" 初次 " ?

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

初次動畫是什么?

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

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

可運行的調試代碼,嘗試刪除內部的 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);
}
/* 進入與離開的動畫 */
.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>

總結

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

    當然如果你設定了 appear-from-class 等屬性 則會與 進入動畫同時執(zhí)行

再提供一個是 class 自定義初次動畫的版本,你會發(fā)現appear 無論如何都會調用 enter 進入動畫,除非你不設置 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é)前請一定查看了 失效問題的總結部分

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

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

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

  在enter 與 class 同時設定時

    enter與class會同時運行

    enter與class 有動畫內容沖突時 enter的應用級別高于 class 的自定義動畫,這甚至會讓 class的全部動畫失效

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

您可能感興趣的文章:

相關文章

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

    超簡單易懂的vue組件傳值

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

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

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

    vue 虛擬DOM的原理

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

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

    這篇文章主要為大家詳細介紹了vue實現無縫輪播效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    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)單頁應用程序,本地安裝和環(huán)境配置是學習和使用Vue的第一步,下面這篇文章主要給大家介紹了關于vue開發(fā)者vite多環(huán)境配置的相關資料,需要的朋友可以參考下
    2023-06-06
  • vue使用axios導出后臺返回的文件流為excel表格詳解

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

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

    Vue3配置bem樣式架構的代碼詳解

    BEM是一種前端命名方法論,主要是針對CSS,意思是塊(Block)、元素(Element)、修飾符(Modifier)的簡寫,這種命名方法讓CSS便于統(tǒng)一團隊開發(fā)規(guī)范和方便維護,本文給大家介紹了Vue3配置bem樣式架構,需要的朋友可以參考下
    2024-10-10
  • vue.set向對象里增加多層數組屬性不生效問題及解決

    vue.set向對象里增加多層數組屬性不生效問題及解決

    這篇文章主要介紹了vue.set向對象里增加多層數組屬性不生效問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue3中配置文件vue.config.js不生效的解決辦法

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

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

最新評論