انتقل إلى محتوى الدرس

Protected Route Layout Wrapper بناء حارس المسارات المحمية

وجّه المستخدم برمجياً بعد إرسال النماذج بخطاف useNavigate وخيار replace، وأنشئ صفحة 404 وحارس المسارات المحمية ProtectedRoute مع تطبيق التحقق الأمني الإلزامي بالخادم.
3 صفوف تعليمية
ReactJS
1 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

بدمج منفذ التخطيط <Outlet /> مع useLocation() و<Navigate replace /> نحصل على نمط حارس المسارات القياسي ProtectedRoute: نضع كافة صفحات الأعضاء داخل مسار أب واحد يتحقق من جلسة المستخدم؛ فإذا لم يكن مسجلاً يحوّله إلى /login مع حفظ وجهته الأصلية في state={{ from: location.pathname }} لإعادته إليها فور تسجيل الدخول!

الصف 2 كود برمجي
HTML
function ProtectedRoute({ user }) {
  const loc = useLocation();
  if (!user) {
    return (
      <Navigate
        to="/login" replace
        state={{ from: loc.pathname }}
      />
    );
  }
  return <Outlet />;
}
الصف 3 ملاحظة هامة