اذهب إلى المحتوى
  • 0

استفسار بخصوص نطاقات الدوال في جافاسكريبت (الشيفرة غير قابلة)

عبدالرحمن العمودي

السؤال

السلام عليكم لماذا الشيفرة غير قابلة للوصول علما انه عندما اكتب ملاحظة  وارجع مرة اخرى لا اجد شئء  ليس هنالك خطأ 

image.thumb.png.5724032f4ef5f5eea6b17b442a64115a.png

بتاريخ 13 ساعة قال عبدالرحمن العمودي:

السلام عليكم لماذا الشيفرة غير قابلة للوصول علما انه عندما اكتب ملاحظة  وارجع مرة اخرى لا اجد شئء  ليس هنالك خطأ 

image.thumb.png.5724032f4ef5f5eea6b17b442a64115a.png

image.thumb.png.797facded78c3f1e9cd0f78ff50ff538.png

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0
بتاريخ 30 دقائق مضت قال عبدالرحمن العمودي:

السلام عليكم لماذا الشيفرة غير قابلة للوصول علما انه عندما اكتب ملاحظة  وارجع مرة اخرى لا اجد شئء  ليس هنالك خطأ  عند اضافة الملاحظ تختفي ولاتظهر في القائمة الرئيسية preview

image.thumb.png.5724032f4ef5f5eea6b17b442a64115a.png

image.thumb.png.797facded78c3f1e9cd0f78ff50ff538.png

image.thumb.png.4960f98435378d54f9f5f22abc3aa499.png

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

Noote1.zip

بتاريخ الآن قال عبدالرحمن العمودي:

القائمة الجانبية والرئيسية لاتظهر الملاحظات 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 3 دقائق مضت قال عبدالرحمن العمودي:

لقد اطلعت على الكود الخاص بك ويبدو ان المشكلة الاصلية قد تم حلها بنجاح ولذلك لن اتطرق لها في هذا التعليق،

ولكن على ما يبدو انه هنالك مشكلة ثانية تواجهها وهي في الوظيفة selectNoteHandler والمشكلة انك وضعت الوظيفة selectNoteHandler داخل النطاق الخاص بالوظيفة saveNoteHandler ، لاحظ :

// حفظ الملاحظة
const saveNoteHandler = () => {
  const note = {
    id: new Date(),
    title: title,
    content: content
  }

  const updatedNotes = [...notes, note];

  setNotes(updatedNotes);
  setCreating(false);
  setSelectedNote(note.id);
  setTitle('');
  setContent('');

  // اختيار ملاحظة 

  const selectNoteHandler = noteId => {


  }

  }

ولهذا فلن تتمكن من الوصول إليها إلا من داخل الوظيفة saveNoteHandler،

أما إذا اردت الوصول إليها من الخارج فيجب عليك كتابتها خارج الوظيفة saveNoteHandler كالتالي :

// حفظ الملاحظة
const saveNoteHandler = () => {
  const note = {
    id: new Date(),
    title: title,
    content: content
  }

  const updatedNotes = [...notes, note];

  setNotes(updatedNotes);
  setCreating(false);
  setSelectedNote(note.id);
  setTitle('');
  setContent('');


}
// اختيار ملاحظة 

const selectNoteHandler = noteId => {


}

وقد لاحظت من خلال السؤالين الماضين انك لديك ضعف في موضوع النطاقات scope للمتغيرات وانصحك بالاطلاع على المقالة التالية وتحديداً على الفقرة التي تتحدث عن النطاقات :

 

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 دقيقة مضت قال عبدالرحمن العمودي:

يعطيك العافية اخي لاكن المشكلة الاولى وهي عدم ظهور الملاحظة في القائمة الجانبية 

اعتقد ان حل مشكلتك في المتابعة إلى الدرس التالي والذي يقوم فيه المدرب بإعداد القائمة الجانبية لعرض الملاحظات الجديدة.

في المرة القادمة قم بكتابة سؤالك في التعليقات تحت الدرس حتى نعرف ماهو الدرس الذي تتحدث عنه.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

انا اقصد انها لم تظهر في القائمة الرئيسية عند تطبيق الدرس وانا تخطيت المشكلة وبدات في كتابة شيفرة القائمة الجانبية شكرا لك

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 دقيقة مضت قال عبدالرحمن العمودي:

انا اقصد انها لم تظهر في القائمة الرئيسية عند تطبيق الدرس وانا تخطيت المشكلة وبدات في كتابة شيفرة القائمة الجانبية شكرا لك

هل يمكنك مشاركة رابط الدرس الذي تتحدث عنه،

وكذلك يفضل ان تكتب سؤالاً يحتوي المشكلة الخاصة بك في قسم التعليقات تحت الدرس.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...