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

السؤال

Recommended Posts

  • 0
نشر (معدل)

حتى تجعل التاريخ يظهر بشكل تلقائي في تطبيق React، استخدم كود JavaScript لجلب التاريخ الحالي، ثم اعرضه بدل أن تكتبه يدويًا.

  • استخدم كائن من نوع Date.
  • استخرج اليوم والشهر والسنة.
  • اضبط التاريخ ليظهر على الشكل يوم-شهر-سنة.
  • اعرض التاريخ داخل عنصر <h4>.

مثال:

const today = new Date(); 
const day = String(today.getDate()).padStart(2, '0'); 
const month = String(today.getMonth() + 1).padStart(2, '0'); 
const year = today.getFullYear(); 
const formattedDate = `${day}-${month}-${year}`;

في ملف JSX:

<div className="date"> 
  <h3>التاريخ</h3> 
  <h4>{formattedDate}</h4> 
</div>

وهكذا سيتم تحديث التاريخ تلقائيًا كل يوم بدون تدخل منك.

تم التعديل في بواسطة Abdulrahman Muhammad
  • 0
نشر

بخصوص التاريخ، فمن خلال كائن Date في جافاسكريبت كالتالي:

<span id="date"></span>
<script>
  function updateDate() {
    const today = new Date();
    document.getElementById('date').textContent = today.toLocaleDateString();
  }
  updateDate();
  setInterval(updateDate, 24 * 60 * 60 * 1000); 
</script>

الفكرة هنا في السطر:

  setInterval(updateDate, 24 * 60 * 60 * 1000);

حيث استخدمت دالة setInterval وحددت لها مدة 24 ساعة لتشغيل دالة updateDate.

حاول تنفيذ ذلك في مشروع React لكي تحقق استفادة.

أما مواقيت الصلاة، ستحتاج إلى API خاص بأوقات الصلاة، ويتوفر التالي:

بالطبع ستحتاج إلى قراءة المستند الخاص به وكيفية استخدامه من هنا:

مثال عند جلب مواقيت الصلات لمدينة القاهرة في دولة مصر بتاريخ اليوم:

حاول القيام بذلك بنفسك، لو واجهت صعوبة أخبرني.

 

  • 0
نشر

لاحظ أنك تريد الحصول على تاريخ اليوم بتنسيق 

DD-MM-YYYY

لتقوم بإرساله في العنوان لديك كما تقوم أنت . ولكن تقوم بوضع التاريخ يدويا .

وللحصول على التاريخ بهذا التنسيق يمكنك إستخدام :

const today = new Date();
const formattedDate = today.toLocaleDateString('en-US', {
  year: 'numeric',
  month: '2-digit',
  day: '2-digit',
}).split('/');
const current_date = `${formattedDate[1]}-${formattedDate[0]}-${formattedDate[2]}`

والآن يمكنك إستخدام current_date في العنوان كما تريد هكذا في دالة fetchPrayerTimer :

  useEffect(() => {
    const fetchPrayerTimer = async () => {
      try {
        const today = new Date();
        const formattedDate = today.toLocaleDateString('en-US', {
          year: 'numeric',
          month: '2-digit',
          day: '2-digit',
        }).split('/');
        const current_date = `${formattedDate[1]}-${formattedDate[0]}-${formattedDate[2]}`
        const response = await fetch(`https://api.aladhan.com/v1/timingsByCity/${current_date}?city=Tr&country=${city}`)
        const data_Prayar = await response.json()

        setPrayerTime(data_Prayar.data.timings)
        setDataTime(data_Prayar.data.date.gregorian.date)


        console.log(data_Prayar.data.date.gregorian.date)

      } catch (e) {
        console.log(e)
      }
    }


    fetchPrayerTimer()
  }, [city])

 

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...