VUE3之多个元素之间的过渡-这个系列的教程通俗易懂,适合新手

博客 动态
0 216
羽尘
羽尘 2022-03-12 21:56:29
悬赏:0 积分 收藏

VUE3 之 多个元素之间的过渡 - 这个系列的教程通俗易懂,适合新手

1. 概述

老话说的好:过去不等于未来,过去成功了不代表将来也会成功,过去失败了也不代表将来也会失败。

 

言归正传,今天我们聊聊多个元素之间的过渡。

 

2. 多个元素之间的过渡

2.1 两个元素交替显示

<body>    <div id="myDiv"></div></body><script>    const app = Vue.createApp({        data(){            return {                show : false            }        },        methods : {            myClick() {                this.show = !this.show;            }        },        template:`            <div class="center">                <transition>                    <div v-if="show"><h3>on</h3></div>                    <div v-else="show"><h3>off</h3></div>                </transition>                <button @click="myClick">切换</button>            </div>        `    });    const vm = app.mount("#myDiv");

 

 

 

 这个例子中,点击切换按钮,两个 div 元素会交替显示,使用了我们之前学过的 v-if 和 v-else 的例子

 

2.2 增加过渡效果

    <style>       /* 入场起始样式 */       .v-enter-from {            opacity: 0;        }        /* 入场过渡效果 */        .v-enter-active {            transition: 2s opacity ease-in;         }        /* 入场结束样式 */        .v-enter-to {            opacity: 1;        }        /* 出场起始样式 */        .v-leave-from {            opacity: 1;        }        /* 出场过渡效果 */        .v-leave-active {            transition: 2s opacity ease-in;         }        /* 出场结束样式 */        .v-leave-to {            opacity: 0;        }    </style>

 

 

 

 我们根据之前的知识增加入场、出场的过渡效果,但效果并不太好,两个元素是同时渲染过渡效果的

 

2.3 增加模式

        template:`            <div class="center">                <transition mode="out-in">                    <div v-if="show"><h3>on</h3></div>                    <div v-else="show"><h3>off</h3></div>                </transition>                <button @click="myClick">切换</button>            </div>        `

 

 

 

 我们增加了 mode="out-in" 后,效果好多了,出场元素会先渲染,然后入场元素才渲染

 

2.4 点刷新,元素也有过渡效果

        template:`            <div class="center">                <transition mode="out-in" appear>                    <div v-if="show"><h3>on</h3></div>                    <div v-else="show"><h3>off</h3></div>                </transition>                <button @click="myClick">切换</button>            </div>        `

 

我们在 transition 标签上增加了 appear 属性,此时点击刷新,也有过渡效果 

 

3. 综述

今天聊了一下 VUE3 中多个元素之间的过渡,希望可以对大家的工作有所帮助,下一节我们继续讲 Vue 中 动画 的相关知识,敬请期待

欢迎帮忙点赞、评论、转发、加关注 :)

关注追风人聊Java,这里干货满满,都是实战类技术文章,通俗易懂,轻松上手。

 

4. 个人公众号

追风人聊Java,欢迎大家关注

posted @ 2022-03-12 20:58 追风人聊Java 阅读(11) 评论(0) 编辑 收藏 举报
回帖
    羽尘

    羽尘 (王者 段位)

    2335 积分 (2)粉丝 (11)源码

     

    温馨提示

    亦奇源码

    最新会员