iis服务器助手广告
返回顶部
首页 > 资讯 > 前端开发 > 其他 >Vue3之元素和组件的动画怎么切换
  • 284
分享到

Vue3之元素和组件的动画怎么切换

Vue3 2023-05-14 23:05:13 284人浏览 泡泡鱼
摘要

实例解析元素间的动画切换元素之间的动画切换指的是两个dom元素之间的切换,比如一个div消失,另一个div显示,消失对应着渐出的效果,显示对应渐入的效果,本例我们以两个div,一个显示hello world,另一个显示bye world,然

    实例解析

    元素间的动画切换

    元素之间的动画切换指的是两个dom元素之间的切换,比如一个div消失,另一个div显示,消失对应着渐出的效果,显示对应渐入的效果,本例我们以两个div,一个显示hello world,另一个显示bye world,然后使用一个按钮控制动画的切换,代码如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta Http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>元素切换动画的实现</title>
        <style>
            .v-enter-from{
                opacity: 0;
            }
            .v-enter-active{
                transition: opacity 1s ease-in;
            }
            .v-enter-to{
                opacity: 1;
            } 
            .v-leave-from{
                opacity: 1;
            }
            .v-leave-active{
                transition:opacity 1s ease-in
            }
            .v-leave-to{
                opacity: 0;
            }
        </style>
        <script src="https://unpkg.com/Vue@next"></script>
    </head>
    <body>
        <div id="root"></div>
    </body>
    <script>
     const app = Vue.createApp({
            data() {
                return {
                   show:false
                }
            },
            methods: {
                handleClick(){
                  this.show = !this.show;
                }
            },
            template: 
            `
            <transition mode="out-in" appear>
                <div v-if="show">hello world </div>
                <div v-else="show" >bye world </div>
            </transition>
            <button @click="handleClick">switch</button>
            `
        });
        const vm = app.mount('#root');
    </script>

    如上面的代码所示,我们使用CSS定义好渐入和渐出的效果,然后将我们要做动画的div放到<transition></transition>标签之间,使用一个Boolean变量show控制元素的显示和隐藏,当我们点击按钮的时候,执行handleClick函数,将show变量取反,达到切换的效果。 在代码中我们还看到了在transition标签上使用了一个mode="out-in",这个mode的取值其实还有一个是mode="in-out",两者的区别如下:

    mode="out-in": 表示两个元素切换的时候,当前的元素先消失,待显示的元素再显示 mode="in-out":表示两个元素切换的时候,待显示的元素先显示,当前的元素再消失

    读者可以将这两个属性都试试,看下效果,印象会更深

    在代码中我们看到有一个属性appear,这个属性的意思是当我们在浏览器中打开界面的时候执行动画,否则页面在加载的时候没有动画

    组件间的动画切换

    在Vue中我们更多的会使用组件的方式 ,其实组件之间也是可以做动画切换的实现的,这里我们可以把上面的例子改造下,以动态组件的方式实现下上面元素间切换的动画效果,代码如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>组件间切换动画的实现</title>
        <style>
            .v-enter-from{
                opacity: 0;
            }
            .v-enter-active{
                transition: opacity 1s ease-in;
            }
            .v-enter-to{
                opacity: 1;
            } 
            .v-leave-from{
                opacity: 1;
            }
            .v-leave-active{
                transition:opacity 1s ease-in
            }
            .v-leave-to{
                opacity: 0;
            }
        </style>
        <script src="https://unpkg.com/vue@next"></script>
    </head>
    <body>
        <div id="root"></div>
    </body>
    <script>
        // 多个单组件之间的动画
        const ComponentA = {
            template:'<div>hello world</div>'
        }
        const ComponentB = {
            template:'<div>bye world</div>'
        }
     const app = Vue.createApp({
            data() {
                return {
                   component:'component-a'
                }
            },
            methods: {
                handleClick(){
                   if(this.component === 'component-a'){
                    this.component = 'component-b';
                   }else{
                    this.component = 'component-a';
                   }
                }
            },
            components:{
                'component-a':ComponentA,
                'component-b':ComponentB
            },
            // 动态组件的方式
            template: 
            `
            <transition mode="out-in" appear>
                <component :is="component" />
            </transition>
            <button @click="handleClick">switch</button>
            `
        });
        const vm = app.mount('#root');
    </script>

    以上就是vue3之元素和组件的动画怎么切换的详细内容,更多请关注编程网其它相关文章!

    --结束END--

    本文标题: Vue3之元素和组件的动画怎么切换

    本文链接: https://www.lsjlt.com/news/208350.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • Vue3之元素和组件的动画怎么切换
      实例解析元素间的动画切换元素之间的动画切换指的是两个dom元素之间的切换,比如一个div消失,另一个div显示,消失对应着渐出的效果,显示对应渐入的效果,本例我们以两个div,一个显示hello world,另一个显示bye world,然...
      99+
      2023-05-14
      Vue3
    • Vue3之元素和组件的动画如何切换
      本篇内容介绍了“Vue3之元素和组件的动画如何切换”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!实例解析元素间的动画切换元素之间的动画切换指...
      99+
      2023-07-06
    • Vue3之元素和组件的动画切换实现示例详解
      目录前言实例解析元素间的动画切换组件间的动画切换总结前言 当我们使用某个软件或者网站完成一些交互的时候,会发现做得很好的网站和软件都少不了动画的润色,完成的功能都是从一个界面跳转到...
      99+
      2023-05-14
      Vue3元素组件动画切换 Vue3 动画切换
    • Vue3怎么将组件手动渲染到指定元素中
      Vue 的多应用实例还记得在创建项目时,我们使用了createApp创建一个App实例,然后将它挂载到了#app里。实际上,在一个 DOM 环境中可以同时存在多个 App 实例,也就是多个 Vue 应用。利用这一点,可以再次创建一个 App...
      99+
      2023-05-21
      Vue3
    • java怎么求数组元素之和
      要求数组元素的和,可以使用循环遍历数组,将每个元素累加起来。具体实现如下: public class ArraySum { ...
      99+
      2023-10-27
      java
    • Win10怎么取消窗口动画和虚拟桌面切换动画
      本文小编为大家详细介绍“Win10怎么取消窗口动画和虚拟桌面切换动画”,内容详细,步骤清晰,细节处理妥当,希望这篇“Win10怎么取消窗口动画和虚拟桌面切换动画”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、首...
      99+
      2023-06-28
    • Vue3将组件手动渲染到指定元素中的方法实现
      目录将组件转换为自定义元素Vue 的多应用实例一些第三方库内部创建的元素,并不是由 Vue 管理的。比如 ECharts,Antv 等图表库中的自定义图形节点。这些库或许支持使用 H...
      99+
      2023-05-17
      Vue3 渲染组件 Vue3 组件渲染到指定元素
    • java怎么求数组元素的和
      要计算数组元素的和,可以使用一个循环来遍历数组,并将每个元素相加。以下是一个示例代码:javapublic class Main {...
      99+
      2023-10-20
      java
    • HTML5+CSS3怎么实现灵动的动画TAB切换效果
      这篇文章将为大家详细讲解有关HTML5+CSS3怎么实现灵动的动画TAB切换效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。设计师给了一个 tab 切换的效果图。虽然是一个很小的功能,但是前端工程师在实...
      99+
      2023-06-08
    • java数组怎么交换两个元素的值
      要交换Java数组中两个元素的值,可以通过以下方式实现:1. 创建一个临时变量,将第一个元素的值赋给临时变量。2. 将第二个元素的值...
      99+
      2023-08-16
      java
    • js怎么实现dom元素横向及纵向滚动的动画
      本篇内容主要讲解“js怎么实现dom元素横向及纵向滚动的动画”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“js怎么实现dom元素横向及纵向滚动的动画”吧!通过s...
      99+
      2024-04-02
    • 怎么用vue动态组件实现选项卡切换效果
      这篇文章主要讲解了“怎么用vue动态组件实现选项卡切换效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用vue动态组件实现选项卡切换效果”吧!导航按钮:<div cla...
      99+
      2023-07-04
    • C#怎么实现数组元素的数据类型转换
      这篇文章主要介绍“C#怎么实现数组元素的数据类型转换”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C#怎么实现数组元素的数据类型转换”文章能帮助大家解决问题。一、场景假设假设有一串字符串如下所示,字...
      99+
      2023-06-30
    • Python中列表,元组,字典和集合之间怎么转换
      本篇内容主要讲解“Python中列表,元组,字典和集合之间怎么转换”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中列表,元组,字典和集合之间怎么转换”吧!前排提示:元祖是错误的写法(...
      99+
      2023-06-30
    • css的display属性怎么实现块级元素和内联元素的相互转换
      这篇文章给大家分享的是有关css的display属性怎么实现块级元素和内联元素的相互转换的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   默认情况下,段落<p>(...
      99+
      2024-04-02
    • vue怎么使用动态组件实现选项卡切换效果
      本文小编为大家详细介绍“vue怎么使用动态组件实现选项卡切换效果”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue怎么使用动态组件实现选项卡切换效果”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。导航按钮:&l...
      99+
      2023-07-04
    • Numpy数组操作之元素添加、删除和修改怎么实现
      这篇文章主要介绍“Numpy数组操作之元素添加、删除和修改怎么实现”,在日常操作中,相信很多人在Numpy数组操作之元素添加、删除和修改怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Numpy数组操作...
      99+
      2023-07-05
    • PHP数组操作之计算数组所有元素和的方法是什么
      这篇文章主要讲解了“PHP数组操作之计算数组所有元素和的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP数组操作之计算数组所有元素和的方法是什么”吧!通过for循环在我们之前的...
      99+
      2023-06-25
    • 怎么用纯CSS 实现一个没有DOM元素的动画效果
      这篇文章给大家分享的是有关怎么用纯CSS 实现一个没有DOM元素的动画效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   代码解读   没有dom元素,直接写css。 ...
      99+
      2024-04-02
    • 怎么在Vue2和Vue3中构建相同的组件
      这篇文章主要讲解了“怎么在Vue2和Vue3中构建相同的组件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在Vue2和Vue3中构建相同的组件”吧!创建...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作