@@ -8,20 +8,20 @@ import RoadmapPopup from "../ShowRoadMap/ShowRoadMap";
88import { Canvas } from "@react-three/fiber" ;
99import Navbar2 from "../../components/Navbar2/Navbar2" ;
1010import "./RoadMap.css" ;
11- import api from "../../api/local- instance" ;
11+ import api from "../../api/instance" ;
1212
1313
14- const AnalysisResult = ( { userId , roadmapName, svgText } ) => {
14+ const AnalysisResult = ( { userName , roadmapName, svgText } ) => {
1515 return (
1616 < div className = "roadmap-result-wrapper" >
1717 < div className = "roadmap-result-container" >
1818 < p className = "roadmap-result-text" >
19- < span > 분석 결과, { userId } 님은 </ span >
19+ < span > 분석 결과, { userName } 님은 </ span >
2020 < span className = "highlight" > { roadmapName } 개발자</ span >
2121 < span >
2222 의 역량과 성향을 지니고 있어요.
2323 < br />
24- 지금부터 { userId } 님만을 위한 맞춤 로드맵을 안내해드릴게요.
24+ 지금부터 { userName } 님만을 위한 맞춤 로드맵을 안내해드릴게요.
2525 </ span >
2626 </ p >
2727
@@ -30,26 +30,17 @@ const AnalysisResult = ({ userId, roadmapName, svgText }) => {
3030 style = { {
3131 width : '100%' ,
3232 minHeight : '220px' ,
33- display : 'flex' ,
34- alignItems : 'center' ,
35- justifyContent : 'center' ,
3633 background : '#f8fafc' ,
3734 borderRadius : '12px' ,
3835 boxShadow : '0 2px 12px 0 rgba(60,60,60,0.07)' ,
3936 margin : '24px 0' ,
40- overflow : 'visible ' ,
41- padding : 0 ,
37+ padding : '12px ' ,
38+ overflow : 'auto' , // SVG 크기 초과 시 스크롤 가능
4239 } }
4340 >
44- { svgText ? (
41+ { svgText ?. trim ( ) . startsWith ( "<svg" ) ? (
4542 < div
46- style = { {
47- width : '100%' ,
48- maxWidth : '100vw' ,
49- minHeight : '220px' ,
50- display : 'block' ,
51- overflow : 'visible' ,
52- } }
43+ style = { { width : '100%' } }
5344 dangerouslySetInnerHTML = { { __html : svgText } }
5445 />
5546 ) : (
@@ -79,6 +70,7 @@ export const RoadMap = () => {
7970 const [ svgUrl , setSvgUrl ] = useState ( "" ) ;
8071 const [ svgText , setSvgText ] = useState ( "" ) ;
8172 const [ roadmaps , setRoadmaps ] = useState ( [ ] ) ;
73+ const [ userName , setUserName ] = useState ( "" ) ;
8274
8375
8476 const handleCardClick = ( svgText , title ) => {
@@ -92,12 +84,13 @@ export const RoadMap = () => {
9284 useEffect ( ( ) => {
9385 const fetcRecommended = async ( ) => {
9486 try {
95- const apiUrl = "http://localhost:8080/api /roadmap/ai-recommend" ;
87+ const apiUrl = "/roadmap/ai-recommend" ;
9688 console . log ( "로드맵 API 호출 시작: " , apiUrl ) ;
9789 const response = await api . post (
9890 apiUrl ,
9991 { } ,
100- { headers : { Accept : "application/json" } }
92+ { headers : { Accept : "application/json" } } ,
93+ { }
10194 ) ;
10295 console . log ( "로드맵 API 응답: " , response ) ;
10396
@@ -106,11 +99,14 @@ export const RoadMap = () => {
10699 setRoadmapName ( data . recommendedRoadmap . roadmapName ) ;
107100 setSvgUrl ( data . recommendedRoadmap . svgUrl ) ;
108101
102+ const userRes = await api . get ( `http://a6b22e375302341608e5cefe10095821-1897121300.ap-northeast-2.elb.amazonaws.com:8000/api/user-service/details/${ data . userId } ` ) ;
103+ const name = userRes . data ?. data ?. name || `사용자${ data . userId } ` ;
104+ setUserName ( name ) ;
105+
106+ const svgRes = await api . get ( data . recommendedRoadmap . svgUrl , { responseType : "text" } ) ;
107+ console . log ( "SVG 텍스트 로드 완료:" , svgRes . data ) ;
108+ setSvgText ( svgRes . data ) ;
109109
110- if ( data . recommendedRoadmap . svgUrl ) {
111- const svgRes = await api . get ( data . recommendedRoadmap . svgUrl , { responseType : "text" } ) ;
112- setSvgText ( svgRes . data ) ;
113- }
114110 } catch ( err ) {
115111 console . error ( "추천 로드맵 API 호출 실패:" , err ) ;
116112 }
@@ -122,7 +118,7 @@ export const RoadMap = () => {
122118
123119 const fetchRoadmaps = async ( ) => {
124120 try {
125- const apiUrl = "http://localhost:8080/api /roadmap" ;
121+ const apiUrl = "/roadmap" ;
126122 console . log ( "로드맵 API 호출 시작: " , apiUrl ) ;
127123 const response = await api . get (
128124 apiUrl ,
@@ -213,7 +209,7 @@ export const RoadMap = () => {
213209 </ div >
214210 ) : selectedTab === "AnalyzeResult" ? (
215211 < AnalysisResult
216- userId = { userId }
212+ userName = { userName }
217213 roadmapName = { roadmapName }
218214 svgText = { svgText }
219215 />
0 commit comments