动画与 v-for

收藏604

阅读13603

更新时间2025-08-22

添加和删除元素

当删除其他元素之间的元素时,其他元素将落入被删除元素所在的位置。 为了动画显示删除元素后其余列表项如何就位,我们将使用自动生成的 v-move 类。

但首先,让我们看一个示例,其中没有在删除元素时以动画方式显示其他项目如何就位:

示例

App.vue:






运行示例 »

正如您在上面的示例中看到的,当删除某个项目时,删除的项目后面的项目会突然跳到新位置。 为了在删除某个项目时为其余项目设置动画,我们使用自动生成的 v-move 类。

v-move 类在被移除的项目离开时对其他元素进行动画处理,但有一个问题:被移除的项目仍然存在并占据位置,直到它被移除为止。 删除了,所以 v-move 类不会有任何影响。 为了给 v-move 类提供一些动画,我们可以将 position: absolute; 设置为 v-leave-active 类。 当在移除期间设置 position: absolute; 时,移除的项目仍然可见,但不占据位置。

在此示例中,与上一个示例的唯一区别是第 14 行和第 17 行添加了两个新的 CSS 类:

示例

App.vue:


运行示例 »

更大的示例

让我们使用上面的示例作为新示例的基础。

在此示例中,当添加或删除新项目或对整个数组进行排序时,整个列表的动画效果将变得更加清晰。

在这个例子中我们可以:

  • 通过点击删除项目
  • 对项目进行排序
  • 在列表中的随机位置添加新项目

示例

App.vue:






运行示例 »

Vue 练习

通过练习测试自己

练习题:

用于对使用 v-for 创建或删除的元素进行动画处理的 Vue 特定组件的名称是什么?

< tag="ol">
  
  • {{ x }}
  • >

    相关

    视频

    RELATED VIDEOS

    更多

    免费

    Web前端开发极速入门
    初级 Web前端开发极速入门

    219920次学习

    收藏

    免费

    前端入门_HTML5
    初级 前端入门_HTML5

    616946次学习

    收藏

    免费

    30分钟学会网站布局
    初级 30分钟学会网站布局

    238440次学习

    收藏

    免费

    CSS视频教程-玉女心经版
    初级 CSS视频教程-玉女心经版

    393054次学习

    收藏

    免费

    独孤九贱(1)_HTML5视频教程

    免费

    独孤九贱(6)_jQuery视频教程

    免费

    独孤九贱(7)_Bootstrap视频教程

    免费

    独孤九贱(2)_CSS视频教程
    初级 独孤九贱(2)_CSS视频教程

    229605次学习

    收藏

    科技资讯

    更多

    精选课程

    更多
    前端入门_HTML5
    前端入门_HTML5

    共29课时

    61.7万人学习

    CSS视频教程-玉女心经版
    CSS视频教程-玉女心经版

    共25课时

    39.3万人学习

    JavaScript极速入门_玉女心经系列
    JavaScript极速入门_玉女心经系列

    共43课时

    70.9万人学习

    独孤九贱(1)_HTML5视频教程
    独孤九贱(1)_HTML5视频教程

    共25课时

    61.6万人学习

    独孤九贱(2)_CSS视频教程
    独孤九贱(2)_CSS视频教程

    共22课时

    23万人学习

    独孤九贱(3)_JavaScript视频教程
    独孤九贱(3)_JavaScript视频教程

    共28课时

    33.9万人学习

    独孤九贱(4)_PHP视频教程
    独孤九贱(4)_PHP视频教程

    共89课时

    125万人学习

    关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号