Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- jpa에러
- queryDSL
- 1차캐시
- uncheck Exception
- REST API 규칙
- json
- spring서버
- 스프링부트오류
- jpa회원가입
- 빈생성안됨
- Q 클래스
- JoinColumn
- github
- 최종 프로젝트
- 복합키
- Filter
- jwt메서드
- git
- Unsatisfied dependency
- Error creating bean with name
- 스프링 부트 공식 문서
- 스프링 부트 기능
- ERD 작성
- REST란
- @IdClass
- Spring Spring boot 차이
- JPA
- 인텔리제이
- json gson 차이
- JPA주의사항
Archives
- Today
- Total
Everyday Dev System
React로 프론트 구현하기 본문
이전글이 선행되어야 합니다.
2023.08.08 - [내배캠 주요 학습/TIL : Today I Learned] - react로 프론트 구현 시도 중 에러 해결
react로 프론트 구현 시도 중 에러 해결
1. 개발 환경 설정: 컴퓨터에 Node.js 및 npm(노드 패키지 관리자) 설치하기. LTS로 설치하였습니다. 공식 Node.js 웹사이트에서 다운로드할 수 있습니다: https://nodejs.org Node.js Node.js® is a JavaScript runtime b
cdev.tistory.com
1. 개발 서버 시작
1) 먼저, cmd창에서 [프로젝트 디렉터리] 경로로 이동합니다.
2) 개발 서버를 시작합니다. ( 개발 모드에서 React 애플리케이션을 실행하기 위함.)
이렇게 하면 로컬 개발 서버가 시작되고 React 앱은 http://localhost:3000에서 액세스할 수 있습니다.
코드를 변경하면 애플리케이션이 자동으로 다시 로드됩니다.
[ C:\Users\ChaeYoung\task-rail-app ]
cd C:\Users\ChaeYoung\task-rail-app
npm start
npm start 입력 후에 cmd 창


인텔리제이 (or WebStorm) 에서도 가능하다!
cmd 창을 통해 생성한 프로젝트를 인텔리제이에서 열고, (인텔리제이를 통해서도 생성 가능)
회원가입, 로그 컴포넌트를 생성 → [src] - [components] - MemberSignup.js , Login.js
( components 디렉터리도 직접 생성하여야 한다. )

// src/components/MemberSignUp.js
import React, { useState } from 'react';
const MemberSignUp = () => {
const [formData, setFormData] = useState({
//firstName: '',
//lastName: '',
name: '',
email: '',
password: '',
});
const handleChange = (e) => {
const { name, value } = e.target;
setFormData((prevData) => ({
...prevData,
[name]: value,
}));
};
const handleSubmit = async (e) => {
e.preventDefault();
// Replace 'YOUR_API_ENDPOINT' with the actual API endpoint for member registration
const response = await fetch('http://localhost:8082/api/users/signup', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(formData),
});
if (response.ok) {
// Handle successful registration, e.g., show success message or redirect to a login page
console.log('Member registered successfully!');
} else {
// Handle registration failure, e.g., show error message
console.error('Member registration failed!');
}
};
return (
<div>
<h2>Member Sign Up</h2>
<form onSubmit={handleSubmit}>
{/*<label>
First Name:
<input
type="text"
name="firstName"
value={formData.firstName}
onChange={handleChange}
/>
</label>
<label>
Last Name:
<input
type="text"
name="lastName"
value={formData.lastName}
onChange={handleChange}
/>
</label>*/}
<label>
Name:
<input
type="text"
name="name"
value={formData.name}
onChange={handleChange}
/>
</label>
<label>
Email:
<input
type="email"
name="email"
value={formData.email}
onChange={handleChange}
/>
</label>
<label>
Password:
<input
type="password"
name="password"
value={formData.password}
onChange={handleChange}
/>
</label>
<button type="submit">Sign Up</button>
</form>
</div>
);
};
export default MemberSignUp;
Login.js
// src/components/Login.js
import React, { useState } from 'react';
const Login = () => {
const [name, setName] = useState('');
const [password, setPassword] = useState('');
const handleLogin = async () => {
try {
// Call your API here to perform the login
const response = await fetch('http://localhost:8082/api/users/login', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ name, password }),
});
if (response.ok) {
// Handle successful login (e.g., set user state, redirect, etc.)
} else {
// Handle failed login (e.g., show error message)
}
} catch (error) {
console.error('Error logging in:', error);
// Handle error (e.g., show error message)
}
};
return (
<div>
<h2>Login</h2>
<input
type="text"
placeholder="Name"
value={name}
onChange={(e) => setName(e.target.value)}
/>
<input
type="password"
placeholder="Password"
value={password}
onChange={(e) => setPassword(e.target.value)}
/>
<button onClick={handleLogin}>Login</button>
</div>
);
};
export default Login;
App.js 파일도 수정하여야 한다.
// src/App.js
import React from 'react';
import MemberSignUp from './components/MemberSignUp';
import Login from './components/Login';
function App() {
return (
<div>
<MemberSignUp />
<Login />
</div>
);
}
export default App;
'내배캠 주요 학습 > 매일 공부' 카테고리의 다른 글
Task Rail 영상 (0) | 2023.08.14 |
---|---|
react 코드 (0) | 2023.08.08 |
Task-Rail, 협업을 위한 Rail 기획 (0) | 2023.08.07 |
checked, unchecked Exception - rollback 이슈 (0) | 2023.08.04 |
OAuth , Mokito (0) | 2023.07.30 |