Skip to content
Snippets Groups Projects
Select Git revision
  • 04a6ac30c40aac095c9523a2a7caeec238c51a24
  • main default protected
  • hgb-wip
  • AWS
4 results

Search.js

Blame
  • Search.js 2.18 KiB
    import { Map, MapMarker } from "react-kakao-maps-sdk";
    import React, { useState, useEffect, useContext } from 'react';
    import {Routes, Route, Link, useNavigate, Navigate  } from 'react-router-dom';
    import SearchMap from '../components/SearchMapByKeyword.js'
    import { UserContext } from '../Context.js';
    const {kakao} = window;
    
    //카카오 지도 API를 이용한 검색(예정)
    /*
    function SearchMap(props){
        // 아주대학교를 기본 위치로 설정
        const [state, setState] = useState({
            center: { lat: 37.28238488648025, lng: 127.04350967609274 },
            isPanto: true,
        });
        const [searchAddress, SetSearchAddress] = useState(); //주소 입력
    
        const handleInput = (e) => {
            SetSearchAddress(e.target.value);
        }
    
        const SearchStart = () => {
            console.log('Start Search!');// action test
            // 주소를 기반으로 한 검색 구현(제주특별자치도 제주시 첨단로 242 를 입력하면 kakao가 나온다)
            const geocoder = new kakao.maps.services.Geocoder();
            let callback = function(result, status) {
                if (status === kakao.maps.services.Status.OK) {
                const newSearch = result[0]
                setState({
                    center: { lat: newSearch.y, lng: newSearch.x }
                })
                }
            };
            geocoder.addressSearch(`${searchAddress}`, callback);
        }
    
      
    }
    */
    
    
    function Search(props) {
    
        const userContext = useContext(UserContext);
    	const navigate = useNavigate();
    	function MoveTo(link){
    		navigate(link)
    	}	
    
        const [location, setLocation] = useState({
            keyword: "",
            center: { lat: null, lng: null }
        });
    
        useEffect(() => {
            const session = userContext.CheckSession()
            .then((response) => {
                if (!response.data) {
                    alert("세션이 만료되었습니다. 다시 로그인 바랍니다.")
                    MoveTo('/login')
                 }
    		})
    		.catch((response)=>{
    			console.log("error!:LogOut")
    			console.log(response)
    		})
          });
    
        return (
    		<div className="search">
    			<h1>검색페이지입니다.</h1>
                <SearchMap loc={location} setLoc={setLocation}></SearchMap>  
    		</div>
        );
    }
    
    
    export default Search;