ทำความเข้าใจคอมโพเนนต์ลำดับสูง (HOC)
ห่อคอมโพเนนต์เพื่อเติม prop ป้องกันเส้นทาง หรือเพิ่มการบันทึกการทำงานผ่านโรงงาน HOC
ทำความเข้าใจคอมโพเนนต์ลำดับสูง (HOC) เป็นบทเรียน React Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน React Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส React Academy มีบทเรียนทั้งหมด 4 บทเรียน
ยินดีต้อนรับ
HOC คืออะไร
// HOC signature
function withEnhancement(WrappedComponent) {
return function Enhanced(props) {
// add behaviour here
return <WrappedComponent {...props} extraProp="value" />;
};
}HOC สำหรับป้องกันการยืนยันตัวตน
function withAuth(Component) {
return function AuthGuard(props) {
const isLoggedIn = useAuth();
if (!isLoggedIn) return <Navigate to="/login" />;
return <Component {...props} />;
};
}
const ProtectedPage = withAuth(DashboardPage);HOC สำหรับบันทึกการทำงาน
function withLogger(Component) {
return function Logged(props) {
console.log('[render]', Component.displayName, props);
return <Component {...props} />;
};
}ส่งต่อพร็อพ
return function HOC(props) {
return <WrappedComponent {...props} injectedProp={value} />;
};กำหนด displayName
function withAuth(Component) {
function AuthGuard(props) { /* ... */ }
AuthGuard.displayName = 'withAuth(' + (Component.displayName || Component.name) + ')';
return AuthGuard;
}ส่งต่อรีฟ
function withStyle(Component) {
return React.forwardRef(function (props, ref) {
return <Component ref={ref} {...props} className="styled" />;
});
}HOC เทียบกับพร็อพสำหรับการเรนเดอร์และฮุก
นรกของตัวห่อหุ้ม
HOC ที่พบในไลบรารีต่าง ๆ
ตรวจสอบความเข้าใจ
สรุปทบทวน
บทถัดไป
คำถามที่พบบ่อย
บทเรียน “ทำความเข้าใจคอมโพเนนต์ลำดับสูง (HOC)” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ทำความเข้าใจคอมโพเนนต์ลำดับสูง (HOC)” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส React Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส React Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ทำความเข้าใจคอมโพเนนต์ลำดับสูง (HOC)”
ห่อคอมโพเนนต์เพื่อเติม prop ป้องกันเส้นทาง หรือเพิ่มการบันทึกการทำงานผ่านโรงงาน HOC คุณปฏิบัติ React Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน React Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน React Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “ทำความเข้าใจคอมโพเนนต์ลำดับสูง (HOC)” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน React Academy นี้ได้ไหม
ได้ บทเรียน React Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- รูปแบบ Render Props
- ทำความเข้าใจคอมโพเนนต์ลำดับสูง (HOC)
- HOC กับ Render Props และ Custom Hooks
- การปรับโครงสร้าง HOC เป็น Custom Hook