티스토리 뷰
반응형
환경
- OS: macOS
- IDE: vs code
- node: v20.6.0
1. UI 생성하기
react-next에서 src/app 밑에 폴더 생성후 page.jsx(page.tsx)를 통해서 라우팅이 가능했다.
하지만 바로 page.jsx에서 페이지를 생성하게 되면 react의 state를 사용하지 못한다.
useState등의 react state는 client에서만 사용이 가능하다. page.jsx는 일반적으로 next.js의 서버에 해당된다.
따라서 아래처럼 'use client' 키워드를 이용해야 한다.
LoginClient.jsx
'use client'
import React, { useState } from 'react'
const LoginClient = () => {
const [email, setEmail] = useState('');
return (
<div> Login </div>
)
}
export default LoginClient;
같은 폴더내에 LoginClient라는 별도의 파일을 만들어서 사용해주고, page.jsx에서 이 컴포넌트를 import해서 사용해준다.
page.jsx
import React from 'react'
import LoginClient from './LoginClient'
const Login = () => {
return (
<LoginClient />
)
}
export default Login
정리
react-next에서 UI를 작성할 때에는 'use client' 파일을 별도로 분리하고 page에서 컴포넌트로 가져다 쓰면 된다.
728x90
반응형
'Front End > REACT' 카테고리의 다른 글
React, Next.js, Firebase를 사용한 Google 소셜 로그인(1) - 환경세팅 (1) | 2023.10.15 |
---|---|
[SASS] classNames 사용하기 (0) | 2023.10.15 |
[React / Next.js] 전역 스타일링 적용 (0) | 2023.10.03 |
[React / Next.js] 어플리케이션 라우팅(url 생성) 구조 (0) | 2023.10.03 |
[React / Next.js] 프로젝트 생성 (0) | 2023.10.03 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- apache kafka
- centos
- logback
- React
- K8S
- Front
- Producer
- consumer
- JPA
- spring
- spring boot
- Java
- rhel
- 리액트
- Data Engineering
- frontend
- Container
- broker
- API
- docker
- feign client
- OS
- Linux
- zookeeper
- Firebase
- apache
- KAFKA
- cs
- 프론트엔드
- NextJS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함
250x250