โ ๏ธ ์ ๋ฆฌํ ๋ด์ฉ์ ์คํ๋ ์๋ชป๋ ์ ๋ณด๊ฐ ์์ ์ ์์ต๋๋ค. ๋๊ธ๋ก ์๋ ค์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.
๋น๋๋ง์ผ ํ๋ก์ ํธ์ ๋ชจ๋ ํ์ด์ง์์ ์๋ ์ฌ์ง์ฒ๋ผ next/Router
์ useRouter
ํ
์ ์ฌ์ฉํด์ router ๊ฐ์ฒด์ ์ ๊ทผํ์ฌ ์ฌ์ฉํ์๋ค.
router.push(url, as, options)
ํ์ง๋ง ์ด๋ฒ ๋น๋๋ง์ผ์์๋ SEO์ ํจ๊ณผ๋ฅผ ๋์ด๊ธฐ ์ํด์ 'next/Link'๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ํด๋ณด๋ ค๊ณ ํ๋ค.
์ฒ์์๋ ๊ทธ๋ฅ ๋ฌด์กฐ๊ฑด <Link>
ํ๊ทธ๋ก ๋ชจ๋ ๊ฒ์ ๋ณ๊ฒฝ์ ํ์๋ค. ์ด๋ ๊ฒ ๊ตฌํํ๊ฒ ๋๋ฉด href ์์ฑ์ด ์๊ธฐ ๋๋ฌธ์ ํฌ๋กค๋ฌ๊ฐ ํ์ด์ง๋ฅผ ์์ธํ๋ ๋ฐ ์ด๋ ค์์ด ์๊ฒ ๋๋ค.
๊ทธ ํ next/link ๊ณต์ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ ๊ฒฐ๊ณผ passHref
์ ์ ์ฉํ๊ฒ ๋์๋ค. passHref
์์ฑ์ ์์์๊ฒ href
์์ฑ์ ์ ๋ฌํด์ฃผ๋ ์ญํ ์ ํ๋ค.
๊ทธ๋ผ ๋ค์๊ณผ ๊ฐ์ด href ์์ฑ์ด ์ ์ฉ๋๋ค.
์ด๊ฒ์ ์ ์๋๋๋ ๊ฒ์ฒ๋ผ ๋ณด์ด์ง๋ง aํ๊ทธ๊ฐ ์กด์ฌํ์ง ์๊ธฐ ๋๋ฌธ์ ์น ํฌ๋กค๋ฌ์๋ ๋งํฌ๊ฐ ํ์๋์ง ์์ SEO์ ๋ถ์ ์ ์ธ ์ํฅ์ ๋ผ์น๋ค๊ณ ํ๋ค.
๋ฐ๋ผ์ <a>
ํ๊ทธ๋ฅผ ์ง์ ์ฝ๋์ ๋ฃ์ด ๊ตฌํํ์๋ค.
<Link href={`/products/${id}`} passHref>
<a>
<Button ~~ />
</a>
</Link>
๊ทธ๋ฆฌ๊ณ ๊ทธ ๊ฒฐ๊ณผ, ์๋์ฒ๋ผ ์ฝ๋๊ฐ ๋ณด์ด๊ฒ ๋์๋ค.
next/link์๋ prefetch
์์ฑ์ด ์๋๋ฐ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ํ์ด์ง๋ฅผ ๋ฏธ๋ฆฌ ๊ฐ์ ธ์ฌ ์ ์๋ค.๊ธฐ๋ณธ์ผ๋ก true๋ก ์ค์ ๋์ด ์์ด์ ๋ฐ๋ก ์ค์ ํ์ง ์์๋ ์ ์ฉ๋์ด ์๋ ์์ฑ์ด๋ค.
๊ฒฐ๊ตญ, ๋ธ๋ผ์ฐ์ ์ viewport์ Link์ปดํฌ๋ํธ๊ฐ ๋ํ๋๊ฒ ๋๋ฉด Link ์ปดํฌ๋ํธ์ ์ฐ๊ฒฐ๋ page๋ค์ ์ฝ๋๋ค์ ๋ฏธ๋ฆฌ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ Link๋ฅผ ํด๋ฆญํ๊ฒ๋๋ฉด ๋น ๋ฅด๊ฒ ํ์ด์ง ์ ํ์ ํ ์ ์๋ค.
next/link์๋ prefetch ์์ฑ์ด ์์ด์ ๋ค์ ํ์ด์ง๋ฅผ ๋ก๋ํ ๋ router.push
๋ณด๋ค ๋น ๋ฅด๊ฒ ์ถ๋ ฅ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ค. ํ์ง๋ง ์ค์ ๋ก๋ ์ฐจ์ด๊ฐ ๊ฑฐ์ ์์๊ณ ๊ทธ ์ด์ ๋ฅผ ์ฐพ์๋ณด์๋ค.
์์ gif์์ ์ฒ๋ผ ๋ฉ์ธ ํ์ด์ง์ ์นด๋๋ฅผ ํด๋ฆญํ์ ๋ ์์ธ ํ์ด์ง์ ์ ๋ณด๋ฅผ SSR๋ก ์ฆ, getServerSideProps
๋ก ์ป์ด์ค๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ์๋ค.
์ด ์์ ์ ํ์ด์ง์ ๋ค์ด๊ฐ์ ๋ ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ธฐ ๋๋ฌธ์ ์์ธ ํ์ด์ง๋ ์ฒ์์ ๋ฏธ๋ฆฌ ๋ฐ์ดํฐ๊ฐ ์๋ ์ํ๋ก ๋ฏธ๋ฆฌ prefetchํ ์ ์๋ ๊ฒ์ด๋ค.
์ฆ, next/link๋ก ๊ฒฐ๊ตญ ๋ค์ ํ์ด์ง๋ฅผ ๋ก๋ํ๋๋ผ๋ ํ์ด์ง๋ฅผ ์ด๋ํ์ ๋ ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ตญ์ ๋๋ฆฐ ์๋๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ฌ ์ ๋ฐ์ ์๋ ๊ฒ์ด๋ค.
์์ธ ํ์ด์ง๋ก ์ ๊ทผํ๋ ์๋๋ฅผ ์กฐ๊ธ ๋ ๋น ๋ฅด๊ฒ ํ๊ณ ์ถ์๋ฐ ๊ทธ๋ฌ๋ ค๋ฉด CSR๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ธํ ํ์ ๋ฏธ๋ฆฌ ๋ง๋ค์ด ๋๊ณ ๋ฐ์ดํฐ๋ง ์์ฒญํ๋ฉด ์ฌ์ฉ์ ์ ์ฅ์์๋ ๋ ๋น ๋ฅด๊ฒ ๋๊ปด์ง ์๋ ์๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
๊ทธ๋ ์ง๋ง ์ฐ๋ฆฌ๋ ์์ธ ํ์ด์ง์ SEO๋ก ์๋ฒ์์ ๋ฐ์์ค๋ ๋ฐ์ดํฐ์ ์ํ ์ด๋ฏธ์ง๋ฅผ ๋ฃ์ด๋จ๊ธฐ ๋๋ฌธ์ ์๋ฒ์์ API๋ฅผ ๊ฒฐ๊ตญ ํธ์ถ ํด์ผ๋ง ํ๋ค.ใ ใ
์ด ๋๊ฐ์ง ๊ฒฝ์ฐ ์ค ํ๋๋ฅผ ํฌ๊ธฐํด์ผ๋ง ํ๋ ๊ฒ์ธ์ง, ๋ ๋ค ํฌ๊ธฐํ์ง ์์๋ ๊ด์ฐฎ์์ง ์กฐ๊ธ ๋ ๋ฐ์ดํฐ๋ฅผ ์ฐพ์๋ด์ผ๊ฒ ๋ค.๐ญ
next์ ๊ธฐ๋ฅ์ ๋์ ํ๋ค๊ณ ํด์ ๋ฌด์กฐ๊ฑด ์ฑ๋ฅ์ด ์ข์์ง๋ค๋ ๊ฒ์ด ์๋์ ๊นจ๋ฌ์๋ค. ๊ฒฐ๊ตญ nextjs์ ๋์ ๊ณผ์ ์ ์ ๋๋ก ์์ง ๋ชปํ ์ฑ๋ก ์ด๋ฐ ๊ธฐ๋ฅ์ด ์์ด์ ๋์ ํด์ผ์ง! ๋ผ๋ ์๊ฐ์ ๋งค์ฐ ์ํํ ๊ฒ์์ ์์๋ค.ใ ใ ์์ผ๋ก๋ ์ ๋์ํ๊ณ ๊ผญ ํ์ํ ๊ธฐ๋ฅ์ธ์ง ์ ํํ ์๊ณ ์ฌ์ฉํด์ผ๊ฒ ๋ค.
๋ฆฌํฉํ ๋ง์ ํ๋ฉด์ ๊ทธ๋๋ ์ฑ๋ฅ ๊ฐ์ ์ด ์งํ๋๊ณ ์์ด์ ๋งค์ฐ ์ข๋ค!!
์์ผ๋ก๋ ํ์ดํ
!>_<