使用tag属性把vue组件标签渲染成html原生标签, tag属性和is属性功能恰好相反
<style>.v-enter, .v-leave-to{transform: translate(300px); opacity: 0;}.v-enter-active, .v-leave-active{transition: 1s;}.v-enter-to, .v-leave{transform: translate(0); opacity: 1;}</style></head><body><script src='https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js'></script><div id='myApp'><button @click='list.push(count++)'>增加</button><button @click="list.shift()">删除</button><!-- transition-group 用于对多个标签的添加或删除实现动画效果 --><!-- 列表li要求父标签是ul,所以使用tag属性把vue组件标签渲染成html原生标签, tag属性和is属性功能恰好相反 --><transition-group tag="ul"><li v-for="item,i in list" :key="item">{{item}}-{{item}}-{{item}}-{{item}}</li></transition-group><!-- transition-group 中的v-for循环必须添加key属性, 可以属性值有两个要求1: 唯一性, 循环中每一个key值都是唯一的, 互补相同2: 不变行, 循环中每一个标签对应的key应是固定的, 不能随数组变化而变化, 所以key值不能是数组索引值,因为数组长度发生变化时, 数组中数据的索引会更新 --></div><script>new Vue({el: '#myApp',data: {count: 0,list: []},methods: {}})</script></body>
