Vue中的列表過渡的原理:
<transition-group>
<div v-for="item of list" :key="item.id">
{{item.title}}
</div>
</transition-group>
相當於
<transition>
<div>hello world</div>
</transition>
<transition>
<div>hello world</div>
</transition>
<transition>
<div>hello world</div>
</transition>
.......
爲每一個div添加過渡標籤來實現過渡效果
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>tremblle v,顫抖;n,顫慄</title>
<script type="text/javascript" src="js/vue.js" ></script>
<style>
.v-enter,.v-leave-to{
opacity: 0;
}
.v-enter-active,.v-leave-active{
transition: opacity 1s;
}
</style>
</head>
<body>
<div id="root">
<transition-group>
<div v-for="item of list" :key="item.id">
{{item.title}}
</div>
</transition-group>
<button @click="handleBtnClick">Add</button>
</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>
</body>
</html>