色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

animation的vue

錢衛國1年前8瀏覽0評論

Vue.js 是一個 MVVM 模式的前端框架,同時具備相當強大的特性。其中,Vue Animation 借助了 Vue 對 DOM 操作的封裝,實現了便捷的動畫效果。

實現 Vue Animation 的主要有兩個 API,分別是 transition 和 transition-group。其中 transition 是對單元素的動畫效果進行操作;而 transition-group 則是對多個元素同時進行動畫效果的操作。

<template>
<transition name="fade"> 
<p v-if="show">Hello, World!</p>
</transition>
</template>
<script>
export default {
data() {
return {
show: true
};
}
};
</script>
<style>
.fade-enter-active, .fade-leave-active {
transition: opacity .3s;
}
.fade-enter, .fade-leave-to {
opacity: 0;
}
</style>

上述代碼使用了 transition API 對一個 p 元素添加了淡入淡出的動畫效果。其中,name 屬性決定了過渡效果的類名,而在樣式中定義的 fade-enter-active、fade-leave-active、fade-enter 和 fade-leave-to 則決定了實際的動畫效果。

<template>
<transition-group name="list">
<div v-for="(item, index) in list" :key="item.id">
{{ item.content }}
</div>
</transition-group>
</template>
<script>
export default {
data() {
return {
list: [
{ id: 1, content: "item1" },
{ id: 2, content: "item2" },
{ id: 3, content: "item3" }
]
};
},
methods: {
addItem() {
this.list.push({ id: Date.now(), content: "new item" });
},
removeItem(index) {
this.list.splice(index, 1);
}
}
};
</script>
<style>
.list-enter-active, .list-leave-active {
transition: all .3s;
}
.list-enter, .list-leave-to {
opacity: 0;
transform: translateY(30px);
}
</style>

而上述代碼則使用了 transition-group 對一個 div 元素數組進行了進場/退場的動畫效果。在代碼中,name 屬性依然決定了過渡效果的類名,而在樣式中定義的 list-enter-active、list-leave-active、list-enter 和 list-leave-to 則決定了實際的動畫效果。此外,此代碼還用到了 Vue 中的 key 屬性以及相應的添加刪除函數。