ช่องฟอร์มแบบไดนามิกด้วย useFieldArray
เพิ่ม ลบ และจัดลำดับช่องฟอร์มแบบไดนามิกด้วยฮุก useFieldArray
ช่องฟอร์มแบบไดนามิกด้วย useFieldArray เป็นบทเรียน React Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน React Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส React Academy มีบทเรียนทั้งหมด 4 บทเรียน
ยินดีต้อนรับ
useFieldArray คืออะไร
import { useFieldArray } from 'react-hook-form';
const { fields, append, remove } = useFieldArray({
control,
name: 'phoneNumbers',
});การตั้งค่า: control จาก useForm
const { register, control, handleSubmit } = useForm({
defaultValues: { phoneNumbers: [{ value: '' }] },
});การเรนเดอร์ฟิลด์
return fields.map((field, index) => (
<div key={field.id}>
<input
{...register(`phoneNumbers.${index}.value`)}
/>
<button onClick={() => remove(index)}>Remove</button>
</div>
));การเพิ่มฟิลด์ใหม่ต่อท้าย
<button onClick={() => append({ value: '' })}>
Add Phone Number
</button>การลบฟิลด์
<button onClick={() => remove(index)}>Delete</button>การตรวจสอบจำนวนฟิลด์ขั้นต่ำ
const schema = z.object({
emails: z.array(z.object({ value: z.string().email() }))
.min(1, 'At least one email required'),
});การสลับและย้ายฟิลด์
swap(0, 2); // swap first and third items
move(3, 0); // move item at index 3 to the topการใช้ useFieldArray ซ้อนกัน
การส่งข้อมูลอาร์เรย์
const onSubmit = (data) => {
console.log(data.phoneNumbers);
// [{ value: '555-1234' }, { value: '555-5678' }]
};ตรวจสอบความเข้าใจ
สรุปทบทวน
จบหลักสูตร
คำถามที่พบบ่อย
บทเรียน “ช่องฟอร์มแบบไดนามิกด้วย useFieldArray” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ช่องฟอร์มแบบไดนามิกด้วย useFieldArray” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส React Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส React Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ช่องฟอร์มแบบไดนามิกด้วย useFieldArray”
เพิ่ม ลบ และจัดลำดับช่องฟอร์มแบบไดนามิกด้วยฮุก useFieldArray คุณปฏิบัติ React Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน React Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน React Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “ช่องฟอร์มแบบไดนามิกด้วย useFieldArray” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน React Academy นี้ได้ไหม
ได้ บทเรียน React Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- เริ่มต้นใช้งาน React Hook Form
- กฎการตรวจสอบและข้อความแสดงข้อผิดพลาด
- การตรวจสอบสคีมาด้วย Zod
- ช่องฟอร์มแบบไดนามิกด้วย useFieldArray