-
المساهمات
676 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
1
إجابات الأسئلة
-
إجابة Mustafa Mahmoud7 سؤال في الحماية والتحقق بواسطة Nextjs 14 كانت الإجابة المقبولة
المشكلة في middlewares/protect.js في هذا السطر
const token = cookieStore.get('jwt')?.value; حيث تريد الوصول للكوكيز باسم jwt وهي غير موجودة لأنك في utils/generateToken عند وضع الكوكيز كانت باسم token وليس jwt
response.cookies.set('token', token, { ^^^^^ httpOnly: true, secure: process.env.NODE_ENV !== 'development', sameSite: 'strict', maxAge: 60*60*24 }); لذا نقوم بتعديل هذا السطر في middlewares/protect.js ليصبح ليتم الوصول للكوكيز بشكل صحيح
const token = cookieStore.get('token')?.value; وأيضا قم باستيراد الحزمة jwt أعلى ملف middlewares/protect.js ليتم الوصول منها للدالة ()verify حيث أننا ننريدها ليتم فك تشفير token بعد ذلك.
import jwt from 'jsonwebtoken' بالتوفيق...
-
إجابة Mustafa Mahmoud7 سؤال في ما هو اسم العائلة في الشهادات كانت الإجابة المقبولة
مرحبا،
عند طلب ال last name المقصود به هو اسم العائلة في حالتك يكون الlast name هو الراوي
بينما ال middle name المقصود به اسم الأب في حالتك يكون middle name هو صبحي
بالتوفيق...
-
إجابة Mustafa Mahmoud7 سؤال في تغيير الحالة في طرف العميل لا يحصل إلا بعد تحديث الصفحة. كانت الإجابة المقبولة
مرحبا محمود
من الملاحظ أنه فى المكون Education يتم عملية الإرسال dispatch للتابع deleteEducation(id) فقط
const handleRemoveEducation = (id) => { dispatch(deleteEducation(id)); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ }; والتابع deleteEducation(id) يقوم بالإتصال بالخادم والإزالة من قاعدة البيانات وهذا يتم بشكل صحيح وتظهر نتيجته بعد عملية التحديث للصفحة.
ولكن لابد أن تتم عملية الإرسال dispatch للتابع (id)removeEducation لكى يتم التفعيل بدون الحاجة لتحديث الصفحة كالأتى
const handleRemoveEducation = (id) => { dispatch(deleteEducation(id)); dispatch(removeEducation(id)); }; بالتوفيق..
-
إجابة Mustafa Mahmoud7 سؤال في أخذ صورة لصفحة الويب على مختلف الشاشات كانت الإجابة المقبولة
وعليكم السلام محمود كل عام وأنت بخير
ما تريد تنفيذه يسمى mockup وهو نموذج لشكل الموقع على مختلف الأجهزة يمكن الذهاب لموقع مثلhttps://websitemockupgenerator.com
وهو يتيح لك طريقتين للعمل
1-وضع الرابط الخاص بموقعك ويجب أن يكون مرفوع على الانترنت لكى يتم الوصول اليه ثم submit يقوم بتوليد نماذج مختلف للأجهزة تستطيع عمل تنزيل لها ، تستطيع عمل تنزيل صورة واحدة تجمع بين مختلف الأجهزة أو اختيار الجهاز الذى تريده.
2- بعد أخذ لقطات للموقع الخاص بك على مختلف الأجهزة تستطيع رفع الصور بعد ذلك.
ستلاحظ ظهورهم أيضا بعد الرفع تستطيع عمل تنزيل لهم.
بالتوفيق..
-
إجابة Mustafa Mahmoud7 سؤال في اضافة كلمة في زر فتح المقالات عشوائي كانت الإجابة المقبولة
ما فهمته أنك تريد اضافة الكلمة بعد عملية الانتقال لصفحة المقال العشوائي
بإمكانك اضافة الكلمة بطريقة نصية بعد الانتقال إلي الصفحة
window.addEventListener("load", function () { if (!window.location.href.includes("?abdo")) { window.location.href += "?abdo"; } }); ويكون هذا الكود داخل صفحة المقال العشوائي سيتم إضافته بعد تحميل الصفحة
ولكن إذا كنت تريد إضافته قبل عملية الإنتقال للصفحة ولابد أن يكون في الرابط لكى تتم عملية تحميل المقال
بإمكانك اضافة الكلمة بالدالة `replace` كما أشار أخى ياسر أو استخدام الطريقة النصية
بالطريقة النصية قبل عملية الإنتقال للصفحة تكون كالأتى
function showLucky(e) { var t = e.feed; var n = t.entry || []; var r = t.entry[0]; for (var i = 0; i < r.link.length; ++i) { if (r.link[i].rel == "alternate") { var href = r.link[i].href; href += "?abdo"; window.location.href = href; } } } }