Vue - 过渡 列表过渡

列表的进入/离开过渡

<div id="app" class="demo">
    <button @click="add">Add</button>
    <button @click="remove">Remove</button>
    <br>
    <br>
    <transition-group name="list">
        <span v-for="item in items" :key="item" class="list-item">{{item}}</span>
    </transition-group>
</div>
<script>
new Vue({
    el: '#app',
    data: {
        items: [1, 2, 3, 4, 5, 6, 7, 8, 9],
        num: 10
    },
    methods: {
        randomIndex () {
            // 获取不超过数组长度的随机数
            return Math.floor(Math.random() * this.items.length)
        },
        add () {
            this.items.splice(this.randomIndex(), 0, this.num++)
        },
        remove () {
            this.items.splice(this.randomIndex(), 1)
        }
    }
})
</script>
<style>
.list-item{
    margin-right: 10px;
    display: inline-block;
}
.list-enter-active, .list-leave-active{
    transition: all 1s;
}
.list-enter, .list-leva-to{
    opacity: 0;
    transform: translateY(30px);
}
</style>

原文地址:https://www.cnblogs.com/xiaobaiv/p/9181240.html

时间: 2024-10-29 10:25:06

Vue - 过渡 列表过渡的相关文章

Vue列表过渡

前面的话 本文将详细介绍Vue列表过渡 概述 前面分别介绍了单元素CSS过渡和JS过渡,以及多元素过渡.如何同时渲染整个列表呢?在这种情景中,需要使用<transition-group>组件 [<transition-group>] <transition-group>不同于 <transition>, 它会以一个真实元素呈现:默认为一个 <span>.也可以通过 tag 特性更换为其他元素.而且其内部元素总是需要提供唯一的 key 属性值 &l

Vue学习笔记进阶篇——列表过渡及其他

本文为转载,原文:Vue学习笔记进阶篇--列表过渡及其他本文将介绍Vue中的列表过渡,动态过渡, 以及可复用过渡是实现. 列表过渡 目前为止,关于过渡我们已经讲到: 单个节点 同一时间渲染多个节点中的一个 那么怎么同时渲染整个列表,比如使用 v-for ?在这种场景中,使用 <transition-group>组件.在我们深入例子之前,先了解关于这个组件的几个特点: 不同于 <transition>, 它会以一个真实元素呈现:默认为一个<span>.你也可以通过 tag

Vue多元素过渡

前面的话 前面分别介绍了单元素过渡的CSS过渡和JS过渡,本文将详细介绍Vue多元素过渡 常见示例 最常见的多标签过渡是一个列表和描述这个列表为空消息的元素: <transition> <table v-if="items.length > 0"> <!-- ... --> </table> <p v-else>Sorry, no items found.</p> </transition> 下面

Vue,品牌列表案例(仅添加,删除,搜索,全局过滤器,私有过滤器)

Vue,品牌列表案例(仅添加,删除,搜索,全局过滤器,私有过滤器) 添加了时间过滤器(私有的) 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title></title> 6 <script src="../../js/vue.js"></script> 7 <link rel=&qu

Vue入门笔记#过渡

Vue过渡,可以在元素从DOM中移除,插入时自动调用过渡效果.根据设定,会适时的触发过渡效果. 在使用的目标标签里添加 transition: <div transition="my_transition"></div> https://jsfiddle.net/miloer/n282tqwv/ 它还可以和v-if,v-show,v-for,动态组件一起使用. 官方对Vue过渡过程的讲解: 尝试以 ID "my-transition" 查找

在Vue中同时使用过渡和动画

1.在需要设置过渡动画的元素外包裹<transition>标签,然后再设置对应的样式即可(v-enter,v-enter-active,v-leave-to,v-leave-active) 2.如果不想用默认的类,可以自定义类如,enter-active-class="active",然后写.class的样式即可. 3.使用animate.css,只要在需要动画的标签外的transition标签里添加对应属性,比如enter-active-class="anima

vue页面切换过渡

<!--<transition name="slide-left">--> <router-view></router-view><!--</transition>class="child-view"--> .child-view { position: absolute; width:100%; transition: all .8s cubic-bezier(.55,0,.1,1);}.sl

【03】Vue 之列表渲染及条件渲染

3.1. 条件渲染 有时候我们要根据数据的情况,决定标签是否进行显示或者有其他动作.最常见的就是,表格渲染的时候,如果表格没有数据,就显示无数据.如果有数据就显示表格数据. Vue帮我们提供了一个v-if的指令,帮助我们完成判断的模板处理. <div id="app"> <h1 v-if="ok">Yes</h1> <h1 v-else>No</h1> </div> <!-- 当ok为tr

VUE指令-列表渲染v-for

v-for 指令根据一组数组的选项列表进行渲染.v-for 指令需要使用 item in items 形式的特殊语法,items 是源数据数组并且 item 是数组元素迭代的别名. v-for="item in items" <!-- 格式v-for="item in items" --> <div style="height: 150px;background: #CCC;margin: 5px;"> <div s