رفرش کامل صفحه بعد از کلیک روی تگ لینک در nextjs
تگ <Link> در nextjs در واقع جهت نمایش یک لینک در صفحات موجود در این فریمورک استفاده میشود. یکی از ویژگیهای این تگ این است که نیاز نیست کل صفحه مجددا بارگزاری شود و تنها یک بخش کوچک را تغییر دهد. در این بین، بعضی از لینکها هستند که بعد از کلیک روی آنها نیاز به رفرش کامل صفحه نیاز است.
رفرش کامل صفحه بعد از کلیک روی تگ لینک در nextjs
برای این کار کافیست در تگ <Link> مورد نظرتان ویژگی as={router.asPath} را اضافه کنید.
به نمونهی زیر دقت کنید:
// imports
import Link from 'next/link';
import { useRouter } from 'next/router';
// in componenet body
const router = useRouter();
// link tag
<Link href="/current-page" as={router.asPath}>
<a>Click me</a>
</Link>
اگر نیاز به آموزشیهای بیشتری از nextjs دارید در بخش نظرات همین نوشته برای ما بنویسید.
برای امتیاز به این نوشته کلیک کنید!
[کل: 1 میانگین: 5]



















رفرش کامل بعد از کلیک باعث از دست رفتن state میشه؟
رفرش کامل صفحه باعث از دست رفتن state میشود، مگر اینکه state به روشی مدیریت شود که در رفرش حفظ شود، مانند استفاده از Context API یا Redux.
استفاده از useRouter تو همه صفحات نیاز هست یا فقط بعضیها؟
سلام، برای استفاده از router.asPath در تگ Link، نیاز است که useRouter را در کامپوننت مورد نظر ایمپورت و استفاده کنید.
میشه بدون استفاده از as، صفحه رو کامل رفرش کرد؟
بله، میتوانید با استفاده از router.reload() صفحه را بدون استفاده از as کامل رفرش کنید. این متد باعث بارگذاری مجدد کامل صفحه فعلی میشود.
این روش با نسخههای جدید Next.js سازگاره؟
بله، این روش با نسخههای جدید Next.js سازگار است و همچنان کار میکند.
مرسی بابت کد
موفق باشین