모든 컴포넌트
MotionPresence
나타나고 사라지는 동안 내용을 마운트한 채 유지합니다.
웹React Native내용과 크기
직접 해 보기
가장 짧은 사용법
Notice.jsx<MotionPresence present={visible} exit={{ opacity: 0, translateY: -12 }}>
Draft saved
</MotionPresence>;
대신 처리하는 일
- 마운트를 해제하는 대신
present를 바꾸세요. 내용이 사라진 뒤에 제거됩니다. - 사라지는 도중 되돌리면 현재 값에서 이어갑니다.
- 다시 나타나는 내용은
exit 자세에서 들어옵니다. - 첫 렌더는 제자리에 멈춘 상태라 이미 있던 내용이 깜박이지 않습니다.
이럴 때 쓰세요
- 임시 저장 알림.
- 결제 화면의 쿠폰 안내.
- 입력칸 아래 오류 메시지.
Props
| Prop | 타입 | 기본값 | 설명 |
|---|
present | boolean | —필수 | 내용을 보이거나 숨깁니다. 마운트를 해제하는 대신 이것을 바꾸세요. |
|---|
enter | Pose | { opacity: 1, translateY: 0 } | 머무는 자세. |
|---|
exit | Pose | { opacity: 0, translateY: -12 } | 사라질 때의 자세이자 다시 들어올 때의 출발 자세. |
|---|
as | element | 'div' | 그릴 요소. |
|---|
transition | Transition | spring | 시간 곡선 { duration, easing } 또는 스프링 { tempo: 'spring', spring }. 스프링은 끊겨도 속도를 이어갑니다. |
|---|
onExitComplete | () => void | | 내용이 사라져 제거된 뒤 실행됩니다. |
|---|
그 밖의 props는 그려지는 요소로 전달되므로 className, style, 이벤트 핸들러를 평소처럼 쓸 수 있습니다.