使用删除方法删除list上的元素v-move没有作用

来源:4-7 列表动画

长长的麦粒

2020-12-27

请问出场动画v-move是没有作用的吗?点击删除按钮的时候直接向前跳一下,下面上代码:

<!DOCTYPE html>

<html lang="en">


<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>lesson26</title>

<style>

.v-enter-from {

opacity: 0;

transform: translateY(30px);

}

.v-enter-active {

transition: all 1.5s ease-in;

}

.v-enter-to {

opacity: 1;

transform: translateY(0);

}

.v-move{

transition: all 0.6s ease;

}


.v-leave-from {

opacity: 1;

transform: translateY(0);

}

.v-leave-active {

transition: all 1.5s ease-out;

}

.v-leave-to {

opacity: 0;

transform: translateY(30px);

}


.list-item {

display: inline-block;

margin-right: 5px;

}

</style>

<script src="https://unpkg.com/vue@next"></script>

</head>


<body>

<div id="root"></div>

</body>

<script>

const app = Vue.createApp({

data() {

return {

list: [1, 2, 3]

}

},

methods: {

handleClick() {

this.list.unshift(this.list.length +  1)

},

deleteClick(i) {

this.list.splice(i,1);

}

},


template: `

           <div>

               <transition-group>

                   <span class="list-item" v-for='(item,i) in list' :key='item'>{{item}}</span>

               </transition-group>

               <button @click="handleClick">增加</button>

               <button @click="deleteClick(i)">删除</button>

           </div>

       `

});


const vm = app.mount('#root'); 

</script>


</html>


写回答

1回答

Dell

2020-12-27

这个你增加一个mode=inout 或者outin 试试呢

0
1
长长的麦粒
好的,谢谢老师
2020-12-28
共1条回复

Vue3入门与项目实战 掌握完整知识体系

明星讲师DELL亲授,全方位知识点+高匹配度项目,入门到深度掌握

3382 学习 · 1454 问题

查看课程