React HOC (yuqori tartibli komponentlar)
Yuqori tartibli component nima?
Higher Order Component (HOC) React komponentlaringizga qo‘shimcha imkoniyatlar qo‘shadigan o‘ram (wrapper) kabidir. Buni telefoningizga g‘ilof kiydirishga o‘xshatish mumkin: g‘ilof telefonning o‘zini o‘zgartirmasdan unga yangi imkoniyatlar (masalan, suvdan himoya) qo‘shadi.
Eslatma: HOC - bu componentni oladigan va ushbu componentning takomillashtirilgan versiyasini qaytaradigan funksiyalar.
Misol: Chegara qo‘shish
HOC qanday ishlashini ko‘rsatish uchun oddiy misol yarataylik - istalgan componentga chegara qo‘shish:
Misol
Unga o‘tkazgan har qanday component atrofida chegara qo‘shadigan funksiya yarating:
// This is our HOC - it adds a border to any component
function withBorder(WrappedComponent) {
return function NewComponent(props) {
return (
<div style={{ border: '2px solid blue', padding: '10px' }}>
<WrappedComponent {...props} />
</div>
);
};
}
// Simple component without border
function Greeting({ name }) {
return <h1>Hello, {name}!</h1>;
}
// Create a new component with border
const GreetingWithBorder = withBorder(Greeting);
function App() {
return (
<div>
<Greeting name="John" />
<GreetingWithBorder name="Jane" />
</div>
);
}
Ushbu misolda:
withBorderbizning HOC - bu componentni oladigan funksiya- Asl nusxani chegara bilan
divga o‘rab oladigan yangi componentni qaytaradi - The original component (
Greeting) remains unchanged - Biz hali ham asl va kengaytirilgan versiyalardan foydalanishimiz mumkin
Eslatma: Ko‘pincha HOC’larni React Hooks bilan almashtirish mumkin, ammo HOC’lar autentifikatsiya yoki ma’lumotlarni olish naqshlari kabi ba’zi bir-biriga bog‘liq muammolar uchun foydalidir.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
