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

السؤال

نشر

أنا بصدد القيام بتمرين حول حالة الطقس كالآتي:

1.JPG.39a9c5c766f3e6aae46fc8e35f6465a9.JPG

أريد إدخال درجات الحرارة كل ثلاث ساعات.

كود الجافا سكريبت:

    .then((data) => {
      // console.log(data)
      resultAPI = data;
      description.innerText = resultAPI.current.weather[0].description;
      temperature.innerText = `${Math.trunc(resultAPI.current.temp)} °C`;
      loc.innerText = resultAPI.timezone;

      tod.innerText = date + " - " + month + " - " + year;

      for (let i = 0; i < time.length; i++) {
        let varHour = hour + i * 3;

        if (varHour >= 24) {
          time[i].innerText = `${varHour - 24} h`;
        } else {
          time[i].innerText = varHour + " h";
        }
      }
      console.log(resultAPI);
      for (let j = 0; j < value.length; j++) {
        value[j].innerText = `${Math.trunc(resultAPI.hourly[j * 3].temp)} °C`;
      }
    });

2.JPG.efe7e5a9c83fbe085f6fc8e711b4c626.JPG

3.thumb.JPG.4ff923f2486daabb4a54e1080c18d0d1.JPG

4.JPG.7896e364c9b087e744d2837e2c4d5a94.JPG

5.JPG.d1a4bbc2fafee65d0b90b5d53aa669b3.JPG

ملاحظة: الخطأ يوضحه console كالتالي:

6.JPG.70c22e719b72b37f1f74a2d0c708bb84.JPG

 

الغريب في الأمر أني عندما أستعمل فقط console لايظهر لي الخطأ.

7.JPG.6595ca16de77509dd773f30dca917dca.JPG

الأمر المحير أيضا أني إعتمدت نفس الطريقة في جلب البيانات لكن الخطأ يظهر فقط في السطر الأخير.

كل الشكر و التقدير مسبقا.

 

Recommended Posts

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

المشكلة لديك هو أن قيمة resultAPI تكون undefined عند طلبها في العبارة البرمجية التي ظهر الخطأ بها.

السبب هو أن الاتصال غير متزامن Async و الشيفرة البرمجية ليست بكامها ضمن then block أي مشكلة أقواس..

انقل القوسين من السطر 48 إلى السطر 66

    .then((data) => {
      // console.log(data)
      resultAPI = data;
      description.innerText = resultAPI.current.weather[0].description;
      temperature.innerText = `${Math.trunc(resultAPI.current.temp)} °C`;
      loc.innerText = resultAPI.timezone;

      tod.innerText = date + " - " + month + " - " + year;

      for (let i = 0; i < time.length; i++) {
        let varHour = hour + i * 3;

        if (varHour >= 24) {
          time[i].innerText = `${varHour - 24} h`;
        } else {
          time[i].innerText = varHour + " h";
        }
      }
      console.log(resultAPI);
      for (let j = 0; j < value.length; j++) {
        value[j].innerText = `${Math.trunc(resultAPI.hourly[j * 3].temp)} °C`;
      }
    });

الملف:

main.js

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

رجاءا كيف يمكن ذلك

يمكن ضغط أي مجلد بالطريقة التالية:

62114320ababf_compressfoldertofile-Copy.thumb.jpg.8f7bbeb970cd16a6ace11197ec81b8f1.jpg

ثم في التعليق نقوم بإرفاق الملف المضغوط

 أسفل هذه النص يوجد عبارة "اسحب الملفات إلى هنا أو اختر ملف" يمكنك من إرفاق ملفات

  • 0
نشر
بتاريخ 29 دقائق مضت قال Wael Aljamal:

المشكلة لديك هو أن قيمة resultAPI تكون undefined عند طلبها في العبارة البرمجية التي ظهر الخطأ بها.

السبب هو أن الاتصال غير متزامن Async و الشيفرة البرمجية ليست بكامها ضمن then block أي مشكلة أقواس..

انقل القوسين من السطر 48 إلى السطر 66


    .then((data) => {
      // console.log(data)
      resultAPI = data;
      description.innerText = resultAPI.current.weather[0].description;
      temperature.innerText = `${Math.trunc(resultAPI.current.temp)} °C`;
      loc.innerText = resultAPI.timezone;

      tod.innerText = date + " - " + month + " - " + year;

      for (let i = 0; i < time.length; i++) {
        let varHour = hour + i * 3;

        if (varHour >= 24) {
          time[i].innerText = `${varHour - 24} h`;
        } else {
          time[i].innerText = varHour + " h";
        }
      }
      console.log(resultAPI);
      for (let j = 0; j < value.length; j++) {
        value[j].innerText = `${Math.trunc(resultAPI.hourly[j * 3].temp)} °C`;
      }
    });

الملف:

main.js

تم

أحيانا خطأ قد تراه بسيط و لكن يأخذ منك الكثير من الوقت

مضى أكثر من ثلاث أيام و أنا أحاول.

شكرا جزيلا

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...