คอมโพเนนต์ทั้งหมด
MotionPresence
เก็บเนื้อหาให้ mount อยู่ขณะเคลื่อนไหวเข้าและออก
เว็บReact Nativeเนื้อหาและขนาด
ลองดู
การใช้งานที่สั้นที่สุด
Notice.jsx<MotionPresence present={visible} exit={{ opacity: 0, translateY: -12 }}>
Draft saved
</MotionPresence>;
สิ่งที่มันจัดการให้คุณ
- เปลี่ยน
present แทนการ unmount เนื้อหาจะออกไปก่อนถูกนำออก - การคืนกลับระหว่างการออกจะทำต่อจากค่าปัจจุบัน
- เนื้อหาที่ปรากฏอีกครั้งจะเข้ามาจาก pose
exit - การเรนเดอร์แรกแสดงในสถานะพัก เนื้อหาที่มีอยู่แล้วจึงไม่กะพริบ
ใช้สำหรับ
- ประกาศว่าบันทึกฉบับร่างแล้ว
- ข้อความเรื่องคูปองในหน้าชำระเงิน
- ข้อความข้อผิดพลาดใต้ช่องกรอก
Props
| Prop | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|
present | boolean | —จำเป็น | แสดงหรือซ่อนเนื้อหา เปลี่ยนค่านี้แทนการ unmount |
|---|
enter | Pose | { opacity: 1, translateY: 0 } | pose ขณะพัก |
|---|
exit | Pose | { opacity: 0, translateY: -12 } | pose ที่เนื้อหาใช้ตอนออกและเข้ามาจาก |
|---|
as | element | 'div' | องค์ประกอบที่จะเรนเดอร์ |
|---|
transition | Transition | spring | เส้นโค้ง timing { duration, easing } หรือสปริง { tempo: 'spring', spring } สปริงรักษาโมเมนตัมไว้เมื่อถูกขัดจังหวะ |
|---|
onExitComplete | () => void | | ทำงานหลังเนื้อหาออกไปและถูกนำออกแล้ว |
|---|
props อื่นจะส่งต่อไปยังองค์ประกอบที่เรนเดอร์ className, style และตัวจัดการเหตุการณ์จึงทำงานตามปกติ