0Pricing
React Academy · บทเรียน

สถานะที่คำนวณต่อและการหลีกเลี่ยงการเรนเดอร์เกินจำเป็น

เลือกใช้ค่าที่คำนวณต่อแทนสถานะที่ซ้ำกัน จดจำการคำนวณที่ใช้ทรัพยากรมาก และรักษาแหล่งข้อมูลจริงเพียงหนึ่งเดียวเพื่อหลีกเลี่ยงการเรนเดอร์เกินจำเป็น

สถานะที่คำนวณต่อและการหลีกเลี่ยงการเรนเดอร์เกินจำเป็น เป็นบทเรียน React Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน React Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส React Academy มีบทเรียนทั้งหมด 3 บทเรียน

สถานะที่คำนวณต่อคืออะไร

สถานะที่คำนวณต่อ = ค่าที่คำนวณจากสถานะหรือพร็อพส์ที่มีอยู่ (เช่น fullName ยอดรวม และตัวกรอง) ควรรักษาแหล่งข้อมูลจริงเพียงแหล่งเดียวเพื่อลดข้อผิดพลาดและการเรนเดอร์ใหม่

กฎ: คำนวณต่อหรือจัดเก็บ

  • คำนวณต่อ หากสามารถคำนวณใหม่จากข้อมูลอื่นได้
  • จัดเก็บ เฉพาะข้อมูลนำเข้าจากผู้ใช้หรือข้อมูลจากเซิร์ฟเวอร์ที่ไม่สามารถคำนวณได้
  • จดจำค่าที่คำนวณต่อซึ่งใช้ทรัพยากรมาก

รูปแบบที่ไม่ควรใช้: สถานะซ้ำซ้อน

ควรหลีกเลี่ยงการซิงค์สถานะที่ซ้ำซ้อน ตัวอย่างนี้เก็บ fullName ไว้ในสถานะและอัปเดตในเอฟเฟกต์ ซึ่งอาจคลาดเคลื่อนได้ง่ายและทำให้เกิดการเรนเดอร์เพิ่ม


<div id="root"></div>

ค่าที่คำนวณต่อ (วิธีที่ดี)

คำนวณ fullName จากชื่อและนามสกุล ไม่ต้องซิงค์ข้อมูลและทำให้เกิดการเรนเดอร์ใหม่น้อยลง ใช้ useMemo หากการรวมข้อมูลใช้ทรัพยากรมาก


<div id="root"></div>

จดจำงานคำนวณต่อที่ใช้ทรัพยากรมาก

สำหรับค่าที่คำนวณต่อซึ่งใช้ทรัพยากรมาก (เช่น การเรียงลำดับหรือการจัดรูปแบบ) ให้ใช้ useMemo เพื่อคำนวณผลลัพธ์ใหม่เฉพาะเมื่อข้อมูลนำเข้าเปลี่ยนแปลง


<div id="root"></div>

เคล็ดลับและข้อควรระวัง

หลีกเลี่ยงสถานะซ้ำซ้อนและเอฟเฟกต์สำหรับซิงค์ข้อมูล ควรเลือกใช้ค่าที่คำนวณต่อและจดจำงานที่ใช้ทรัพยากรมาก ควรรักษาอาร์เรย์การพึ่งพาให้ถูกต้องเพื่อป้องกันข้อมูลล้าสมัย

แนวทางปฏิบัติที่ดีที่สุดสำหรับสถานะที่คำนวณต่อ

แนวทางปฏิบัติใดช่วยหลีกเลี่ยงการเรนเดอร์เพิ่มเติมจากข้อมูลที่ซ้ำซ้อนได้ดีที่สุด

สรุป

สรุป: ควรรักษาแหล่งข้อมูลจริงเพียงแหล่งเดียว คำนวณ fullName ยอดรวม และตัวกรองจากข้อมูลที่มีอยู่ จดจำงานที่ใช้ทรัพยากรมากเพื่อข้ามการเรนเดอร์ที่ไม่จำเป็น

คำถามที่พบบ่อย

บทเรียน “สถานะที่คำนวณต่อและการหลีกเลี่ยงการเรนเดอร์เกินจำเป็น” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “สถานะที่คำนวณต่อและการหลีกเลี่ยงการเรนเดอร์เกินจำเป็น” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส React Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส React Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “สถานะที่คำนวณต่อและการหลีกเลี่ยงการเรนเดอร์เกินจำเป็น”

เลือกใช้ค่าที่คำนวณต่อแทนสถานะที่ซ้ำกัน จดจำการคำนวณที่ใช้ทรัพยากรมาก และรักษาแหล่งข้อมูลจริงเพียงหนึ่งเดียวเพื่อหลีกเลี่ยงการเรนเดอร์เกินจำเป็น คุณปฏิบัติ React Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน React Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน React Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน

บทเรียน “สถานะที่คำนวณต่อและการหลีกเลี่ยงการเรนเดอร์เกินจำเป็น” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน React Academy นี้ได้ไหม

ได้ บทเรียน React Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การเรนเดอร์ใหม่กับคอมมิต: เมื่อใดควรปรับประสิทธิภาพ
  2. React.memo, useMemo, useCallback — ใช้งานจริง
  3. สถานะที่คำนวณต่อและการหลีกเลี่ยงการเรนเดอร์เกินจำเป็น
← กลับไปที่ React Academy