Transition
- vue에서 제공하는 기본 애니메이션 컴포넌트
- v-if, v-show, component 토글(?)에 의해서만 동작됨
<script>
export default {
data() {
return {
show: true
}
}
}
</script>
<template>
<button @click="show = !show">토글</button>
<Transition>
<p v-if="show">안녕</p>
</Transition>
<Transition name="other">
<p v-if="!show">안녕 반대</p>
</Transition>
</template>
<style>
.other-enter-from {
transform: translateY(-30px);
}
.other-enter-to {
transform: translateX(10px);
}
.other-enter-active,
.other-leave-active {
transition: all 0.5s ease;
}
.v-enter-active,
.v-leave-active {
transition: opacity 0.5s ease;
}
.v-enter-from,
.v-leave-to {
opacity: 0;
}
</style>
TransitionGroup
- 컴포넌트가 v-for 을 통해 목록에 삽입, 제거등을 실행할 때 사용되는 애니메이션 컴포넌트
- v-for 안의 요소에
TransitionGroup
를 추가해야 적용 가능<script>
const getInitialItems = () => [1, 2, 3, 4, 5]
let id = getInitialItems().length + 1
export default {
data() {
return {
items: getInitialItems()
}
},
methods: {
insert() {
const i = this.items.length +1;
this.items.push(i)
},
reset() {
this.items = getInitialItems()
id = getInitialItems().length + 1
}
}
}
```
반응형
'개발 > Vue.js' 카테고리의 다른 글
[Vue 스터디 #3] 디렉티브, 이벤트, 양방향 바인딩, Watchers (3) | 2024.11.12 |
---|---|
[Vue 스터디 #1] 컴포넌트, 환경구성, 라이프 사이클 훅, setup (1) | 2024.11.12 |
[Vue2 스터디 #2] 반응형 기초, Computed, 클래스 및 스타일 바인딩, 조건부, 목록 렌더링 (1) | 2024.11.03 |