في منشور المدونة هذا، سأرشدك عبر سيناريو عملي حيث يتفاعل المكون الأصلي (ListBox) مع المكون الفرعي (AlertComponent) باستخدام الدعائم وعمليات الاسترجاعات.
يفيد هذا في React عندما تريد أن يقوم مكون فرعي بالتواصل مرة أخرى مع الأصل للحفاظ على الحالة أو تشغيل الإجراءات.
دعونا نفهم بمساعدة هذا المثال:
إليك تفاصيل التفاعل:
import React, { useState } from 'react'; import AlertComponent from './AlertComponent'; const ListBox = () => { const [showComponent, setShowComponent] = useState(false); const alertAction = async () => { setShowComponent(!showComponent); }; return ( ); }; export default ListBox;{/* Passing props to the child component */}Item 1
{/* Other list items */}{ alert('Item Deleted'); setShowComponent(false); }} onCancel={() => setShowComponent(false)} showComponent={alertAction} />
export const AlertComponent: = ({ title, description, onAccept, onCancel, showComponent }) => { return (... rest of the code ) }
يعمل showComponent كرد اتصال لأنه يحافظ على الحالة المسؤولة عن إظهار/إخفاء AlertComponent
عند الضغط على رفض، سيؤدي رد الاتصال هذا إلى تبديل الحالة الحالية لـ showComponent.
{ alert('Item Deleted'); setShowComponent(false); }} onCancel={() => setShowComponent(false)} showComponent={alertAction} />
استخدام الدعائم وردود الاتصال بهذه الطريقة يسمح بتدفق واضح للبيانات بين المكونات الأصلية والفرعية في React.
يمكن للوالد التحكم في الحالة وتمريرها إلى الطفل، بينما يمكن للطفل التواصل مرة أخرى عبر عمليات الاسترجاعات لإبلاغ الوالد بأي تغييرات أو إجراءات قام بها المستخدم.
يعد هذا مفيدًا بشكل خاص لسيناريوهات مثل عرض التنبيهات أو الوسائط أو النوافذ المنبثقة استجابةً لتفاعل المستخدم.
واصل البناء!
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3