Tất cả component
MotionPresence
Giữ nội dung được gắn trong lúc nó hoạt ảnh vào và ra.
WebReact NativeNội dung và kích thước
Thử ngay
Cách dùng ngắn nhất
Notice.jsx<MotionPresence present={visible} exit={{ opacity: 0, translateY: -12 }}>
Draft saved
</MotionPresence>;
Những gì nó xử lý giúp bạn
- Đổi
present thay vì unmount; nội dung rời đi trước khi bị gỡ. - Khôi phục giữa lúc thoát sẽ tiếp tục từ giá trị hiện tại.
- Nội dung xuất hiện lại sẽ đi vào từ pose
exit. - Lần render đầu hiện nó ở trạng thái nghỉ, nên nội dung đã có sẵn không bị nháy.
Dùng cho
- Thông báo đã lưu bản nháp.
- Thông báo mã giảm giá khi thanh toán.
- Thông báo lỗi dưới một trường.
Props
| Prop | Kiểu | Mặc định | Mô tả |
|---|
present | boolean | —bắt buộc | Hiện hoặc ẩn nội dung. Đổi giá trị này thay vì unmount. |
|---|
enter | Pose | { opacity: 1, translateY: 0 } | Pose khi nghỉ. |
|---|
exit | Pose | { opacity: 0, translateY: -12 } | Pose mà nội dung rời đi và đi vào từ đó. |
|---|
as | element | 'div' | Phần tử được render. |
|---|
transition | Transition | spring | Đường cong timing { duration, easing } hoặc lò xo { tempo: 'spring', spring }. Lò xo giữ đà khi bị ngắt. |
|---|
onExitComplete | () => void | | Chạy sau khi nội dung đã rời đi và bị gỡ. |
|---|
Các props khác được chuyển tới phần tử được render, nên className, style và trình xử lý sự kiện hoạt động như bình thường.
Được dùng trong các ví dụ này