Vue中的列表过渡
有这样一个代码需求:实现一个点击按钮,然后在列表中添加并显示内容
<div id="root"> <div v-for="(item,index) of list" :key="item.id"> {{item.title}} div> <button @click="handleBtnClick">Addbutton> div> <script> var count = 0 var vm = new Vue({ el: "#root", data: { list: [] }, methods: { handleBtnClick: function() { this.list.push({ id: count++, title: 'hello world' }) } } }) script>
怎么在这个代码的基础上实现列表过渡的效果呢?
需要使用
.v-enter, .v-leave-to { opacity: 0; } .v-enter-active, .v-leave-active { transition: opacity 1s; } <div id="root"> <transition-group> <div v-for="(item,index) of list" :key="item.id"> {{item.title}} div> transition-group> <button @click="handleBtnClick">Addbutton> div>
原理:
转换成了对单个元素的过渡动画