السلام عليكم اخواني
لدي مدونة انمي تقوم بجلب الحلقات في صندوق عبر الصنيف للحلقات
لكن هناك مشكلة الا وهي
عند اضافة اكثر من 150 حلقة يحدث بطئ وكلما اضفت اكثر يحدث بطئ اكثر في ظهور الحلقات في الصندوق
لكنني عند بحثي اكثر وجدت مدونة انمي بها خاصية جميلة فهي تقوم بتحميل 150 حلقة وعند النزول لاخر حلقة يقوم بتحميل 150 اخرى كي لايحدث بطئ وتعليق
اريد ان اجعل مدوتي تفعل هكذا لتفادي البطئ الحاصل
التعليقات
يمكنك القيام بذلك من خلال وضع limit للحلقات التي يتم جلبها بحيث لاتتعدى ال150 حلقة وتستخدم الajax و الjavascript events حيث ستقوم بوضع دالة يتم تنفيذها عندما يتم النزول لأسفل إلى الحد الذي توجد به اخر حلقة تم تحميلها بعدها تستخدم الajax داخل هذه الدالة لجلب البيانات وعرضها على المتصفىح دون الحاجة إلى تحديث الصفحة.
هل استطيع التواصل معك اخي ؟
و عليكم السلام، يمكنك الاستفادة من تقنية ajax لتنفيذ هذه المهمة، حيث أنها تقنية JavaScript يمكنك برمجتها كالتالي:
عند نشوء حدث معين event في المتصفح (في حالتنا وصول المستخدم إلى أسفل الصفحة) يتم تنفيذ كود معين و هو جسم تاب الـ ajax .
إن تابع الـ ajax سيقوم بإرسال طلب request إلى Backend API يعمل على السيرفر و يطلب منه جلب البيانات (في حالتك 150 حلقة أخرى).
ستقوم بإكمال برمجة تابع الـ ajax ليقوم بعمل إضافة البيانات التي قام بجلبها من السيرفر إلى الواجهة الأماميةضمن عناصر الـ HTML أي أن يعرضها على المتصفح.
ملاحظة أخرى قد تفيدك في حال كنت تبحث عن زيادة الأداء performance: ربما من الأفضل إزالة العناصر القديمة (الـ 150 حلقة السابقين) أو استبدالهم بالعناصر الجديدة كي لا تستهلك موارد كثيرة من جهاز المستخدم و بالتالي سيعاني من بطء التصفح.
أرى أنه من الأفضل أن تقوم بعمل Paginating للحلقات بدل عرضها متسلسلة في قائمة واحدة،
يمكن عرض كل 50 حلقة أو أقل في قائمة مع أزرار للتنقل بين الصفحات الجزئية [1 ,2 ,3 ,..].
لأنه في حال تشغيل الموقع على أجهزة الهاتف سيكون 150 عنصر في HTML كبير و سوف يسبب بطئا في التحميل و عمل الموقع.
فيمكن تحميل كل X حلقة سويا وهي قيمة يمكن تحديدها حسب حجم البيانات الذي يتم تحميله.