[React] Link / NavLink

Dorong·2023년 5월 24일
0

React

목록 보기
13/29
post-thumbnail
  • react router를 사용하는 프로젝트에서는 a 태그를 바로 사용하면 안됨
    => a 태그로 페이지 이동 시 브라우저에서 페이지를 새로 불러오기 때문
  • Link 컴포넌트도 a 태그를 사용하긴 하지만,
    페이지를 새로 불러오는 것을 막고 History API를 통해 브라우저 주소의 경로만 바꾸는 기능이 내장\
  • 이동을 위한 태그이기때문에 to='route경로' 속성이 필수!!
import { Link } from 'react-router-dom'

...

<Link to = '/'> Home </Link>
<Link to = '/detail'> Detail </Link>

  • 링크에서 사용하는 경로가 현재 라우트의 경로와 일치하는 경우 특정 스타일 또는 CSS 클래스를 적용하는 컴포넌트
  • 컴포넌트의 style과 className은 {isActive : boolean}을 파라미터로 전달받는 함수 타입의 값을 전달
import { NavLink } from 'react-router-dom'

...

const Navbar = () => {
	const activeStyle = {
    	color : 'blue',
        fontSize : 25,
    }
    
    ...
    
    return (
    	...
        
        <NavLink to='/about' style = { ({isActive}) => (isActive ? activeStyle : undefined ) }>
        	About
        </NavLink>
        
        ...
    )
}
profile
🥳믓진 개발자가 되겠어요🥳

0개의 댓글