feat: React 18 프론트엔드 추가 및 프로젝트 구조 정리
- wtm-frontend → wtm-frontend-vue 이름 변경 - wtm-frontend-react 추가 (React 18 + PrimeReact + Zustand) - 동일한 모듈 구조 및 API 연동 (Vue 버전과 기능 동일) - Vue:5173 / React:5174 포트 분리 - 개발자 가이드에 React 프론트엔드 안내 추가 - .gitignore: Claude/OMC, 문서 생성 스크립트, package-lock 제외 - 불필요 파일 git 추적 제거 (.omc, generate_*.py, regenerate_*.py) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
이 Commit은 다음에 포함되어 있습니다:
@@ -120,7 +120,46 @@
|
||||
GRANT ALL ON mos.* TO 'jsh'@'%';
|
||||
|
||||
|
||||
[2-3] Redis (설치 불필요)
|
||||
[2-3] Node.js (프론트엔드 개발 시 필요)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
용도: WTM 프론트엔드 개발 서버 실행 (Vue 3 또는 React 18)
|
||||
|
||||
* Windows
|
||||
winget install --id OpenJS.NodeJS.LTS
|
||||
|
||||
* macOS
|
||||
brew install node@22
|
||||
|
||||
* Linux
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo bash -
|
||||
sudo apt install -y nodejs
|
||||
|
||||
설치 확인:
|
||||
node -v → v22.x.x
|
||||
npm -v → 10.x.x
|
||||
|
||||
프론트엔드 선택:
|
||||
+----------------------+------------------+----------+---------------------+
|
||||
| 프로젝트 | 프레임워크 | 포트 | UI 라이브러리 |
|
||||
+----------------------+------------------+----------+---------------------+
|
||||
| wtm-frontend-vue | Vue 3 + Vite | 5173 | PrimeVue 4 |
|
||||
| wtm-frontend-react | React 18 + Vite | 5174 | PrimeReact 10 |
|
||||
+----------------------+------------------+----------+---------------------+
|
||||
|
||||
두 프론트엔드는 동일한 백엔드 API(wtm-api :8081)에 연결됩니다.
|
||||
프로젝트 상황에 맞는 프레임워크를 선택하세요.
|
||||
|
||||
빠른 시작:
|
||||
# Vue 3 버전
|
||||
cd wtm-frontend-vue
|
||||
npm install && npm run dev → http://localhost:5173
|
||||
|
||||
# React 18 버전
|
||||
cd wtm-frontend-react
|
||||
npm install && npm run dev → http://localhost:5174
|
||||
|
||||
|
||||
[2-4] Redis (설치 불필요)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
용도: 캐시, 세션 저장소
|
||||
|
||||
@@ -178,6 +217,17 @@
|
||||
http://localhost:8081/swagger-ui → WTM API 문서
|
||||
http://localhost:8081/admin/login → WTM 관리 콘솔
|
||||
|
||||
[WTM 프론트엔드 실행 — Vue 3 또는 React 18 중 택 1]
|
||||
# Vue 3 버전
|
||||
cd wtm-frontend-vue
|
||||
npm install && npm run dev
|
||||
http://localhost:5173 → WTM 프론트엔드 (Vue 3)
|
||||
|
||||
# React 18 버전
|
||||
cd wtm-frontend-react
|
||||
npm install && npm run dev
|
||||
http://localhost:5174 → WTM 프론트엔드 (React 18)
|
||||
|
||||
|
||||
[방법 B] DB 직접 설치 (Docker 없이)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -228,7 +278,7 @@
|
||||
[환경별 수정]
|
||||
SPRING_PROFILES_ACTIVE 프로필 조합 (아래 참고)
|
||||
DB_HOST / DB_PORT DB 서버 주소
|
||||
CORS_ORIGINS 프론트엔드 URL
|
||||
CORS_ORIGINS 프론트엔드 URL (Vue: 5173, React: 5174)
|
||||
|
||||
[프로필 조합 예시]
|
||||
로컬 개발 (MySQL) : local,mysql
|
||||
@@ -250,7 +300,8 @@
|
||||
| 3306 | MySQL | 기본 DB (mysql 프로필) |
|
||||
| 5432 | PostgreSQL | 대안 DB (postgresql 프로필) |
|
||||
| 6379 | Redis | Embedded Redis 자동 구동 (별도 설치 불필요)|
|
||||
| 5173 | wtm-frontend | Vue 3 개발 서버 |
|
||||
| 5173 | wtm-frontend-vue | Vue 3 개발 서버 |
|
||||
| 5174 | wtm-frontend-react| React 18 개발 서버 |
|
||||
| 8001 | WBX FastAPI | 선택, 그룹웨어 동시 운영 시 |
|
||||
+--------+------------------+------------------------------------------+
|
||||
|
||||
@@ -285,6 +336,19 @@
|
||||
A: netstat -ano | findstr :8080 으로 프로세스 확인 후 종료
|
||||
또는 application.yml에서 server.port 변경
|
||||
|
||||
Q: 프론트엔드(Vue/React) npm install 실패
|
||||
A: Node.js 22 LTS가 설치되어 있는지 확인: node -v
|
||||
node_modules 삭제 후 재설치: rm -rf node_modules && npm install
|
||||
|
||||
Q: 프론트엔드에서 API 호출 시 CORS 에러
|
||||
A: wtm-api의 application.yml에서 CORS 설정 확인:
|
||||
cors.allowed-origins에 http://localhost:5173, http://localhost:5174 포함 필요
|
||||
또는 .env에서 CORS_ORIGINS 설정
|
||||
|
||||
Q: Vue(5173)와 React(5174) 동시 실행 가능한가?
|
||||
A: 네, 포트가 다르므로 동시 실행 가능합니다. 둘 다 동일한 wtm-api(:8081)에
|
||||
연결되며 API 프록시가 각각 설정되어 있습니다.
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
8. 참고 문서
|
||||
|
||||
새 Issue에서 참조
사용자 차단