用transition-group 包裹标签,注意没有name属性,要使用v-enter等类
<style>
.v-enter,
.v-leave-to {
opacity: 0
}
.v-enter-active,
.v-leave-active {
transition: opacity 2s
}
</style>
</head>
<body>
<div id="demo">
<button @click="handleClick">add item</button>
<transition-group>
<div v-for="item of lists" :key="item.id">{
{item.id}}、{
{item.title}}</div>
</transition-group>
</div>
<script>
new Vue({
el: '#demo',
data: {
count: 0,
lists: []
},
methods:{
handleClick () {
this.lists.push({
id: this.count++,
title: 'new add item'
})
}
}
})
</script>
结果:添加新的内容时,是