@@ -21,7 +21,6 @@ const PlacePage = () => {
2121 const [ hoveredCategory , setHoveredCategory ] = useState ( null ) ;
2222 const [ isBottomSheetOpen , setIsBottomSheetOpen ] = useState ( false ) ;
2323 const [ hasMounted , setHasMounted ] = useState ( false ) ;
24- const [ isLocationPermissionGranted , setIsLocationPermissionGranted ] = useState ( false ) ;
2524 const router = useRouter ( ) ;
2625
2726 useEffect ( ( ) => {
@@ -32,16 +31,20 @@ const PlacePage = () => {
3231 return null ;
3332 }
3433
34+ const handleImageClick = ( ) => {
35+ router . push ( `/place/placesearch` ) ;
36+ }
3537 return (
3638 < Container >
3739 < Banner />
3840 < ImagesSection >
39- < ImageWrapper onClick = { ( ) => setIsBottomSheetOpen ( true ) } >
41+ < ImageWrapper onClick = { handleImageClick } >
4042 < Image
4143 src = "/assets/place/banner3.svg"
4244 alt = "내 주변 동반가능시설"
4345 width = { 270 }
4446 height = { 118 }
47+ layout = "responsive"
4548 style = { {
4649 objectFit : "cover" ,
4750 borderRadius : "20px" ,
@@ -52,12 +55,13 @@ const PlacePage = () => {
5255 < div > 찾아보기</ div >
5356 </ OverlayText >
5457 </ ImageWrapper >
55- < ImageWrapper onClick = { ( ) => router . push ( '/recommend' ) } >
58+ < ImageWrapper >
5659 < Image
5760 src = "/assets/place/banner2.svg"
5861 alt = "성향별 추천 시설"
5962 width = { 270 }
6063 height = { 118 }
64+ layout = "responsive"
6165 style = { {
6266 objectFit : "cover" ,
6367 borderRadius : "20px" ,
@@ -70,6 +74,7 @@ const PlacePage = () => {
7074 </ ImageWrapper >
7175 </ ImagesSection >
7276
77+ < CategoryWrapper >
7378 < CategorySection >
7479 < h2 > 카테고리별 < span > 인기 리뷰</ span > 🔥</ h2 >
7580 < CategorySelector
@@ -81,25 +86,11 @@ const PlacePage = () => {
8186 < Hr />
8287 < ReviewList reviews = { reviews } />
8388 </ CategorySection >
89+ </ CategoryWrapper >
8490 < Hr2 />
8591 < FooterWrapper >
8692 < Footer />
8793 </ FooterWrapper >
88- { isBottomSheetOpen && (
89- < BottomSheet
90- title = { Permission . args . title }
91- content = { Permission . args . content }
92- cancelText = { Permission . args . cancelText }
93- confirmText = { Permission . args . confirmText }
94- onClose = { ( ) => setIsBottomSheetOpen ( false ) }
95- onConfirm = { ( ) => {
96- setIsLocationPermissionGranted ( true ) ;
97- setIsBottomSheetOpen ( false ) ;
98- router . push ( `place/placesearch?permissionGranted=true` ) ;
99- } }
100-
101- />
102- ) }
10394 </ Container >
10495 ) ;
10596} ;
@@ -109,21 +100,24 @@ export default PlacePage;
109100const Container = styled . div `
110101 display: flex;
111102 flex-direction: column;
103+ width : 100%;
112104 min-height: 100vh;
113105 margin: 0 auto;
114- padding: 20px;
115106 background-color: #f8f8f8;
107+ position: relative;
116108` ;
117109
118110const ImagesSection = styled . section `
119111 display: flex;
120- justify-content: space-between ;
112+ justify-content: center ;
121113 gap: 20px;
122- margin-top: 20px;
114+ height: 100%;
115+ position: relative;
116+ margin: 20px auto;
117+ padding : 0 1.25rem;
123118` ;
124119
125120const ImageWrapper = styled . div `
126- position: relative;
127121 cursor: pointer;
128122` ;
129123
@@ -137,13 +131,19 @@ const OverlayText = styled.div.withConfig({
137131 font-weight: bold;
138132 color: ${ ( { dark } ) => ( dark ? "white" : "black" ) } ;
139133 padding: 5px 10px;
134+
135+ @media (max-width: 500px) {
136+ font-size : 10px;
137+ }
140138` ;
141139
140+ const CategoryWrapper = styled . div `
141+ padding: 0 1.25rem;
142+ `
142143const CategorySection = styled . section `
143- margin-top: 10px;
144144 background: #fff;
145- padding: 20px ;
146- border-radius: 20px ;
145+ padding: 1.25rem ;
146+ border-radius: 1.25rem ;
147147 border: 1px solid #ababab;
148148 h2 {
149149 margin-bottom: 20px;
@@ -155,8 +155,7 @@ const CategorySection = styled.section`
155155` ;
156156
157157const FooterWrapper = styled . div `
158- margin-top: auto;
159- width: 100%;
160- margin-left: -20px;
161- padding: 10px 0;
158+ margin-top: 0.75rem;
159+ width: 100%;
160+ padding: 0 1.25rem;
162161` ;
0 commit comments