Kirolos Nagy2 نشر 21 ديسمبر 2021 أرسل تقرير نشر 21 ديسمبر 2021 اريد تغير قيمه state من component غير الي هو موجود فيه ازاي ؟ 2 اقتباس
0 Hassan Hedr نشر 21 ديسمبر 2021 أرسل تقرير نشر 21 ديسمبر 2021 إذا كنت تستخدم مكون صف Class Component يمكنك استدعاء التابع setState من صنف المكون وتمرير غرض يحوي القيم التي تريد تغييرها كالتالي class MyComponent extends Component { ... function render() { ... this.setState({ state: 'القيمة الجديدة' }); ... } } بينما إذا كنت تستخدم مكون تابع Functional Component يمكنك استخدام الخطاف useState سيعيد لك مصفوفة العنصر الأول منها هو الحالة والثاني هو تابع لتغيير الحالة يمكن تمرير القيمة له مباشرة كالتالي function MyComponent() { const [state, setState] = useState(); ... setState('القيمة الجديدة'); ... } يمكنك مراجعة المقال التالي لقراءة المزيد 1 اقتباس
0 Kirolos Nagy2 نشر 21 ديسمبر 2021 الكاتب أرسل تقرير نشر 21 ديسمبر 2021 بتاريخ 1 دقيقة مضت قال Hassan Hedr: إذا كنت تستخدم مكون صف Class Component يمكنك استدعاء التابع setState من صنف المكون وتمرير غرض يحوي القيم التي تريد تغييرها كالتالي class MyComponent extends Component { ... function render() { ... this.setState({ state: 'القيمة الجديدة' }); ... } } بينما إذا كنت تستخدم مكون تابع Functional Component يمكنك استخدام الخطاف useState سيعيد لك مصفوفة العنصر الأول منها هو الحالة والثاني هو تابع لتغيير الحالة يمكن تمرير القيمة له مباشرة كالتالي function MyComponent() { const [state, setState] = useState(); ... setState('القيمة الجديدة'); ... } يمكنك مراجعة المقال التالي لقراءة المزيد مش ده قصدي ازاي اعدل علي ال state من ملف تاني مش منفس الملف اقتباس
0 Hassan Hedr نشر 21 ديسمبر 2021 أرسل تقرير نشر 21 ديسمبر 2021 بتاريخ 6 دقائق مضت قال Kerollos nagy: مش ده قصدي ازاي اعدل علي ال state من ملف تاني مش منفس الملف يجب إرفاق المثال الذي تعمل عليه كنص وتنسيقه كشيفرة مع توضيح استفسارك تمامًا على المثال الذي تواجه فيه المشكلة 1 اقتباس
0 Kirolos Nagy2 نشر 21 ديسمبر 2021 الكاتب أرسل تقرير نشر 21 ديسمبر 2021 بتاريخ 1 دقيقة مضت قال Hassan Hedr: يجب إرفاق المثال الذي تعمل عليه كنص وتنسيقه كشيفرة مع توضيح استفسارك تمامًا على المثال الذي تواجه فيه المشكلة طب هل ممكن انادي علي state من ملف اخر اقتباس
0 Hassan Hedr نشر 21 ديسمبر 2021 أرسل تقرير نشر 21 ديسمبر 2021 بتاريخ 2 دقائق مضت قال Kerollos nagy: طب هل ممكن انادي علي state من ملف اخر لا يمكن ذلك مباشرة حيث أن الحالة هي خاصة داخل المكون نفسه ولا يمكن لمكون الآخر محاولة التعديل فيها، يمكن بدل من ذلك تمرير خصائص props للمكون كالتالي <MyComponent propName='قيمة الخاصية'/> ومن داخل المكون يمكن الوصول إليها إما عبر this.props في مكونات الصفوف: class MyComponent extends Component { ... function render() { ... this.props.propName; ... } } أو من خلال أو معامل للمكونات التابع: function MyComponent(props) { ... props.propName ... } 1 اقتباس
0 شرف الدين حفني نشر 22 ديسمبر 2021 أرسل تقرير نشر 22 ديسمبر 2021 يمكنك تنفيذ المطلوب عبر تمرير الدالة المسؤلة عن تغيير الحالة من المُكون الأب إلى المُكون الإبن, يمكنك فهم ذلك بشكلٍ أفضل عبر المثال التالي const Parent = ()=>{ const [name, setName] = useState("") const changeName = (value)=>{ setName(value) } return( <Child changeName = {changeName}/> ) } const Child = ({changeName})=>{ return( <input type='text' onChange={e=>changeName(e.target.value)}/> ) } كما تلاحظ عند تغيير قيمة الinput في المكون الإبن يتم مناداة الدالة changeName التي بدورها تقوم بتغيير الstate الخاص بالمكون الأب 1 اقتباس
السؤال
Kirolos Nagy2
اريد تغير قيمه state من component غير الي هو موجود فيه ازاي ؟
6 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.