Creation:2025-08-23Last update:2025-08-23
استخدم هذه الصفحة والموفر AI الذي تريدهChatGPTClaudeDeepSeekGoogle AI modeGeminiPerplexityMistralGrok
استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةEdit this doc
If you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy
Copy doc Markdown to clipboard
هوك useRewriteURL
يُعد هوك useRewriteURL الخاص بـ SolidJS مصمماً لإدارة إعادة كتابة عناوين URL المحلّية على جهة العميل. يقوم تلقائياً بتصحيح عنوان المتصفح إلى نسخته المترجمة "الجميلة" استناداً إلى اللغة الحالية والتكوين في intlayer.config.ts.
باستخدام window.history.replaceState، يتجنّب التنقلات المكررة عبر Solid Router.
الاستخدام
استدعِ الهوك داخل مكوّن يكون جزءاً من تطبيقك.
tsx
نسخ الكود
نسخ الكود إلى الحافظة
import { useRewriteURL } from "solid-intlayer";const Layout = (props) => { // يصحح تلقائيًا /fr/tests إلى /fr/essais في شريط العنوان إذا كانت قاعدة إعادة كتابة موجودة useRewriteURL(); return <>{props.children}</>;};كيف يعمل
- الكشف: يستخدم الـ hook
createEffectلمراقبة التغييرات في التابع التفاعليlocale(). - المطابقة: يحدد ما إذا كان
window.location.pathnameالحالي يطابق مسارًا كانونيًا له اسم بديل محلي "أجمل" للغة الحالية. - تصحيح URL: إذا وُجد اسم بديل أجمل، يستدعي الـ hook
window.history.replaceStateلتحديث شريط العنوان دون التأثير على حالة التنقل الداخلية أو التسبب في إعادة رسم المكوّنات.
لماذا تستخدمه؟
- عناوين URL المعتمدة: يفرض عنوان URL واحد لكل نسخة مترجمة من المحتوى، وهو أمر حاسم لتحسين محركات البحث (SEO).
- راحة المطور: يتيح لك الاحتفاظ بتعريفات المسارات الداخلية بصيغتها الأساسية (canonical) بينما تعرض للمستخدمين مسارات محلية سهلة الاستخدام.
- اتساق: يصحح عناوين URL عندما يقوم المستخدمون بكتابة مسار يدويًا لا يتبع قواعد التوطين المفضلة لديك.