คอมโพเนนต์ทั้งหมด
MotionSwipe
แถวที่ปัดเพื่อเผยการกระทำ และปัดเพื่อลบทิ้งได้หากต้องการ
เว็บReact Nativeท่าทาง
ลองดู
การใช้งานที่สั้นที่สุด
Row.jsx<MotionSwipe
endActions={<button onClick={() => archive(id)}>Archive</button>}
dismiss="end"
onDismiss={() => remove(id)}
>
<MessagePreview />
</MotionSwipe>;
สิ่งที่มันจัดการให้คุณ
- แถวตามการลากแนวนอน มีแรงต้านเมื่อเลยการกระทำ และหยุดตามความเร็วที่คุณปล่อย
- เมื่อมี
dismiss การปัดยาวหรือการเหวี่ยงจะเลื่อนแถวออก ยุบความสูง แล้วเรียก onDismiss(side) - การเลื่อนแนวตั้งยังใช้ได้ และเปิดค้างได้ทีละแถวเท่านั้น
- การแตะแถวที่เปิดอยู่จะปิดมัน และโฟกัสคีย์บอร์ดบนการกระทำจะเผยมันออกมา
ใช้สำหรับ
- เก็บถาวรหรือลบในกล่องจดหมาย
- ปักหมุดบทสนทนา
- นำรายการออกจากรายการ
Props
| Prop | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|
children | ReactNode | | เนื้อหาของแถว |
|---|
startActions | ReactNode | | ปรากฏที่ต้นบรรทัดเมื่อแถวถูกลากไปทางปลาย |
|---|
endActions | ReactNode | | ปรากฏที่ปลายบรรทัดเมื่อแถวถูกลากไปทางต้น |
|---|
dismiss | 'start' | 'end' | 'both' | | ด้านที่การปัดยาวหรือการเหวี่ยงจะลบแถว |
|---|
onDismiss | (side) => void | | ทำงานหลังแถวเลื่อนออกและยุบแล้ว ให้ลบรายการออกจากข้อมูลของคุณที่นี่ |
|---|
onOpenChange | (side | null) => void | | ทำงานพร้อมด้านที่เปิด หรือ null เมื่อแถวปิด |
|---|
disabled | boolean | false | ปิดการปัด |
|---|
contentClassName | string | | คลาสของเนื้อหาแถว contentStyle กำหนดสไตล์ inline ของมัน |
|---|
transition | Transition | spring | เส้นโค้ง timing { duration, easing } หรือสปริง { tempo: 'spring', spring } สปริงรักษาโมเมนตัมไว้เมื่อถูกขัดจังหวะ |
|---|
props อื่นจะส่งต่อไปยังองค์ประกอบที่เรนเดอร์ className, style และตัวจัดการเหตุการณ์จึงทำงานตามปกติ