คอมโพเนนต์ทั้งหมด

MotionPresence

เก็บเนื้อหาให้ mount อยู่ขณะเคลื่อนไหวเข้าและออก

เว็บReact Nativeเนื้อหาและขนาด

ลองดู

กำลังเตรียมตัวอย่าง…

การใช้งานที่สั้นที่สุด

Notice.jsx
<MotionPresence present={visible} exit={{ opacity: 0, translateY: -12 }}>
  Draft saved
</MotionPresence>;

สิ่งที่มันจัดการให้คุณ

  • เปลี่ยน present แทนการ unmount เนื้อหาจะออกไปก่อนถูกนำออก
  • การคืนกลับระหว่างการออกจะทำต่อจากค่าปัจจุบัน
  • เนื้อหาที่ปรากฏอีกครั้งจะเข้ามาจาก pose exit
  • การเรนเดอร์แรกแสดงในสถานะพัก เนื้อหาที่มีอยู่แล้วจึงไม่กะพริบ

ใช้สำหรับ

  • ประกาศว่าบันทึกฉบับร่างแล้ว
  • ข้อความเรื่องคูปองในหน้าชำระเงิน
  • ข้อความข้อผิดพลาดใต้ช่องกรอก

Props

Propชนิดค่าเริ่มต้นคำอธิบาย
presentboolean—จำเป็นแสดงหรือซ่อนเนื้อหา เปลี่ยนค่านี้แทนการ unmount
enterPose{ opacity: 1, translateY: 0 }pose ขณะพัก
exitPose{ opacity: 0, translateY: -12 }pose ที่เนื้อหาใช้ตอนออกและเข้ามาจาก
aselement'div'องค์ประกอบที่จะเรนเดอร์
transitionTransitionspringเส้นโค้ง timing { duration, easing } หรือสปริง { tempo: 'spring', spring } สปริงรักษาโมเมนตัมไว้เมื่อถูกขัดจังหวะ
onExitComplete() => voidทำงานหลังเนื้อหาออกไปและถูกนำออกแล้ว

props อื่นจะส่งต่อไปยังองค์ประกอบที่เรนเดอร์ className, style และตัวจัดการเหตุการณ์จึงทำงานตามปกติ

เว็บและ React Native

pose ใช้ opacity, translateX, translateY, scale, scaleX, scaleY, rotate, width และ height onExitComplete ทำงานหลังเนื้อหาออกไปแล้ว

pose และ props เดียวกันใช้ได้บน React Native

ใช้ในตัวอย่างเหล่านี้

ค้นหา

พิมพ์เพื่อค้นหาเอกสาร