티스토리 뷰
반응형
NextJS의 특이점 중 하나인 jsx 를 사용하여 표현해보고자 합니다. 표현 방법은 간단하게 style 태그 내의 jsx 를 사용하면 됩니다.
<style jsx>{`
nav {
background-color: tomato;
}
a {
text-decoration: none;
}
.active {
color: yellow;
}
`}
</style>
위의 jsx 는 html에서 style 태그 내에 존재하는 항목처럼 사용이 가능하고 아래에 배치하여도 위의 태그 및 클래스명을 그대로 사용할 수 있습니다.
import Link from 'next/link';
import { useRouter } from 'next/router';
export default function NavBars() {
const router = useRouter();
console.log(router);
return <nav>
<Link style={{color: "red"}} href="/">
<a>
Home
</a>
</Link>
<Link href="/about">
<a className={router.pathname === '/about' ? 'active' : ''}>
About
</a>
</Link>
<style jsx>{`
nav {
background-color: tomato;
}
a {
text-decoration: none;
}
.active {
color: yellow;
}
`}</style>
</nav>;
}
링크: https://github.com/jyp90/nextjs-intro/commit/d05ddb03c6a1d250bdbe069087cf3d99686f5d5d
반응형
'Client' 카테고리의 다른 글
[Next.js] Redirect 사용하기 (0) | 2022.01.10 |
---|---|
[Next.js] Component 를 더 세세히 나누기 (0) | 2022.01.09 |
[Next.js] Global App.tsx 만들기 (0) | 2022.01.08 |
[Next.js] CSS Module 사용하기 (1) | 2022.01.04 |
[Next.js] Router 만들기 (3) | 2022.01.03 |
[Next.js] 의 프로젝트 구성도 (0) | 2022.01.02 |
댓글
공지사항