คอมโพเนนต์ทั้งหมด
MotionStream
ข้อความสตรีมที่แสดงด้วยจังหวะคงที่และไล่ทันเมื่อข้อมูลทะลักเข้ามา
เว็บReact Nativeตัวเลขและข้อความ
ลองดู
การใช้งานที่สั้นที่สุด
Answer.jsx<MotionStream text={answerSoFar} initial />
<MotionStream text={answerSoFar}>
{visible => <Markdown>{visible}</Markdown>}
</MotionStream>
สิ่งที่มันจัดการให้คุณ
- ข้อมูลที่ทะลักกลายเป็นสิ่งที่อ่านได้: ข้อความแสดงด้วยความเร็ว
speed ตัวอักษรต่อวินาที แทนการมาเป็นก้อน - งานค้างจะเร่งการแสดงให้ปรากฏภายในประมาณ
catchUp มิลลิวินาที - อีโมจิ ธง และเครื่องหมายผสมไม่เคยถูกแยก และอีโมจิที่ได้รับมาครึ่งเดียวจะรอส่วนที่เหลือ
- คำตอบที่ถูกเขียนใหม่จะทำต่อจากส่วนต้นที่เหมือนกัน แทนที่จะเริ่มใหม่
- ตัวอักษรที่แสดงแล้วจะเข้าสู่หน้าโดยตรง React เรนเดอร์เพียงไม่กี่ครั้งต่อวินาที
ใช้สำหรับ
- คำตอบของผู้ช่วยในแชต
- ล็อกของการบิลด์หรือการดีพลอย
- คำบรรยายสด
Props
| Prop | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|
text | string | —จำเป็น | ข้อความจนถึงตอนนี้ ข้อความที่ยาวขึ้นจะแสดงด้วยจังหวะคงที่ การเขียนใหม่จะทำต่อจากส่วนต้นที่เหมือนกัน |
|---|
speed | number | 90 | อัตราการแสดงพื้นฐานเป็นตัวอักษรต่อวินาที |
|---|
catchUp | number | 900 | งานค้างจะแสดงภายในประมาณจำนวนมิลลิวินาทีนี้ด้วยการเร่ง |
|---|
initial | boolean | false | แสดงข้อความที่มีอยู่ตอน mount แบบค่อย ๆ ด้วย (ไม่เช่นนั้นจะแสดงทันที) |
|---|
effect | 'fade' | 'none' | 'fade' | fade ทำให้ตัวอักษรใหม่ค่อย ๆ ปรากฏ none แสดงทันที |
|---|
children | (visible: string) => ReactNode | | ฟังก์ชันที่รับข้อความที่ปรับจังหวะแล้ว เช่น สำหรับเรนเดอร์ Markdown |
|---|
as | element | 'span' | องค์ประกอบที่จะเรนเดอร์ |
|---|
onMotionComplete | (text) => void | | ทำงานทุกครั้งที่การแสดงไล่ทัน text |
|---|
props อื่นจะส่งต่อไปยังองค์ประกอบที่เรนเดอร์ className, style และตัวจัดการเหตุการณ์จึงทำงานตามปกติ