السلام عليكم اقوم بارسال الداتا فى عنوان url
اقوم بالحصول عليها عن طريق const param = useParams(); console.log(param.slug[0]); المشكلة ان عند جلب الايميل يظهر بهذا الشكل ahmedpahr%40gmail.com اريده ان يظهر بشكل صحيح مثل الرابط شكرا مقدما
السلام عليكم اقوم بارسال الداتا فى عنوان url
اقوم بالحصول عليها عن طريق const param = useParams(); console.log(param.slug[0]); المشكلة ان عند جلب الايميل يظهر بهذا الشكل ahmedpahr%40gmail.com اريده ان يظهر بشكل صحيح مثل الرابط شكرا مقدما
لاحظ عند إرسال البيانات في عنوان URL، يتم ترميز بعض الأحرف الخاصة مثل "@" وغيرها لتفادي المشاكل المحتملة في العنوان، بالتالي يجب فك ترميز الأحرف للحصول على البيانات بشكل صحيح.
عليك استخدام decodeURIComponent لفك ترميز البيانات المستلمة من عنوان URL، كالتالي:
import { useParams } from 'next/navigation';
const MyComponent = () => {
const param = useParams();
const decodedEmail = decodeURIComponent(param.slug[0]);
console.log(decodedEmail);
return (
<div>
<p>Email: {decodedEmail}</p>
</div>
);
};
export default MyComponent;
التعليقات