일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- class
- Instanc
- probs.children
- string
- probs
- 상속 (inheritance)
- props비구조화 할당
- 문자열을 객체로 만드는법
- flex-direction
- 추상화 (abstraction)
- 첫번째 미니 프로잭트
- 참조자료형
- 다형성 (polymorphism)
- 객체지향 프로그래밍 특징
- Promise Chaining
- align-content
- 클래스 문법 구조
- align-iitems
- css 정리
- justfiy-content
- 조건문
- Math.floor()
- 화살표함수 기본 개념
- 얕은복사와 깊은 복사
- display
- Promise all
- 캡슐화 (encapsulation)
- 재귀함수 탬플릿
- 재귀적으로 생각하기
- async/await
Archives
- Today
- Total
희락코딩
# 12. Vue_transition tag 본문
728x90
반응형
vue 애니메이션 태그
vue에선 애니메이션을 주는 특별한 태그가 있습니다. 일반 적인 css로 할땐 아래와 같습니다.
<div class="start" :class="{end : isModal}">
<Modal @closeModal="isModal = false" :clickModal="clickModal" :isModal="isModal"/>
</div>
핵심 포인트는 :class={클래스명 : 조건} 입니다. 이럴때 isModal이 true일 때 class명인 end가 적용이 됩니다.
.start {
opacity: 0;
transition: all 1s;
}
.end {
opacity: 1;
}
그렇다면 vue에서 제공하는 transition 태그를 이용하기 위해선 그냥 감싸고 name="클래스명" 으로 작성하면 됩니다. 예시는 아래와 같습니다.
<transition name="fade">
<Modal @closeModal="isModal = false" :clickModal="clickModal" :isModal="isModal"/>
</transition>
css는 아래와 같고 퇴장시 애니메이션을 주고 싶으면 스타일에서 enter 대신 leave로 바꾸면 됩니다.
/* 시작시 */
/* 애니메이션 동작 전 상태 */
.fade-enter-from {
opacity: 0;
transform: translateY(-1000px);
}
/* 애니메이션 동작 중 상태 */
.fade-enter-active {
transition: all 1s;
}
/* 애니메이션 동작 후 상태 */
.fade-enter-to {
opacity: 1;
transform: translateY(0px);
}
/* 퇴장시 */
/* 애니메이션 동작 전 상태 */
.fade-leave-from {
opacity: 1;
}
/* 애니메이션 동작 중 상태 */
.fade-leave-active {
transition: all 1s;
}
/* 애니메이션 동작 후 상태 */
.fade-leave-to {
opacity: 0;
}
728x90
반응형
'프로그래밍 > Vue' 카테고리의 다른 글
#14. Vue_router (0) | 2021.12.18 |
---|---|
#13. Vue_url 파라미터 (0) | 2021.12.17 |
#11. Vue_watch (0) | 2021.12.17 |
#10. Vue_v_model (0) | 2021.12.17 |
#9. Vue_custom_event (0) | 2021.12.17 |
Comments