project/모임웹프로젝트

메인페이지 구성

naspeciallist 2024. 11. 18. 16:36

메인페이지는 자바스크립트를 이용하여 버튼을 클릭하면 해당 페이지로 이동 할 수 있게 간단하게 구성을 하였습니다.

또한 상단 네비바를 이용하여 편하게 해당 페이지로 이동 할 수 있게 구성을 하였습니다.

메인페이지는 상단 사진처럼 디자인을 했습니다.

 

<body>
<!-- 헤더 영역 -->
<th:block th:replace="fragments/nav :: header"></th:block>

<!-- 메인 컨텐츠 영역 -->
<th:block th:replace="fragments/mainContent"></th:block>

<!-- 푸터 영역 -->
<th:block th:replace="fragments/nav :: footer"></th:block>

<script th:src="@{js/login.js}"></script>

</body>

 

타임리프에 프레그먼트를 이용하여 페이지의 코드 재사용성과 유지보수에 용이 할 수 있게 하였습니다.(나중에 메인페이지에 기능을 추가하거나 버전 업데이트 대비)

 

<!-- 첫 번째 섹션 -->
<div class="section section1">
  <div class="overlay"></div>
  <div class="content">
    <h1>나와 비슷한 사람 어디서 찾을까?</h1>
    <div class="link-button">
      <div class="button-group">
        <p><span>나에게 딱 맞는</span> 이성을 찾고 싶다.</p><form action="/chat/match" method="POST">
        <input type="hidden" name="userId" th:value="${user.uid}"> <!-- 현재 사용자 UID -->
        <button type="submit">맞춤형 상대 찾기</button>
      </form>
      </div>
      <div class="button-group2">
        <p>내가 원하는 <span>이성을 찾고 싶다.</span></p>
        <button onclick="goToProfileSearch()">프로필로 상대 찾기</button>
      </div>
    </div>
  </div>
</div>

<!-- 두 번째 섹션 -->
<div class="section section2">
  <div class="overlay"></div>
  <div class="content2">
    <h1><span>우리</span><br>오늘은 뭐하면서 놀까?</h1>
    <div class="button-group">
      <p>오늘은 어떤 사람들을 만날볼까?</p>
      <button onclick="goTomeetingList()">모임 찾아보기</button>
    </div>
    <div class="button-group2">
      <p><span>오늘은 어떤 걸 같이 해볼까?</span></p>
      <button onclick=" makeMeetingRoom()">직접 모임 만들기</button>
    </div>
  </div>
</div>

<script>
  function goToProfileSearch() {
    // 원하는 경로로 페이지 이동
    window.location.href = '/chat/findMultipleUsers'; // 여기에 이동할 URL을 입력하세요
  }

  function goTomeetingList() {
    // 원하는 경로로 페이지 이동
    window.location.href = '/meetingRoomsMap'; // 여기에 이동할 URL을 입력하세요
  }

  function makeMeetingRoom() {
    // 원하는 경로로 페이지 이동
    window.location.href = '/createMeetingRoom'; // 여기에 이동할 URL을 입력하세요
  }
</script>

 

자바스크립트를 통해 각버튼에 이벤트를 생성하여 클릭하면 해당 페이지로 이동 할 수 있게 하였습니다.

 

헤더부분은 많은 페이지에서 사용하기 때문에 재사용성을 높이기 위해서 모듈화 하여 구성을 하였습니다.

<header th:fragment="header">
    <div class="header">
        <div class="logo-image"><img src="/image/logo.png"></div>
        <div class="header-index">
            <a href="/mypage">마이페이지</a> <!-- 마이페이지 링크 -->
            <a href="/mypage/edit">프로필 수정</a> <!-- 프로필 수정 링크 -->
            <a href="/logout">로그아웃</a> <!-- 로그아웃 링크 -->
            <a href="#" onclick="submitMatchForm()">맞춤형 상대 찾기</a>
            <form id="matchForm" action="/chat/match" method="POST" style="display: none;">
                <input type="hidden" name="userId" value="${user.uid}"> <!-- 현재 사용자 UID -->
            </form> <!-- 맞춤형 상대 찾기 링크 -->
            <a href="/chat/findMultipleUsers">프로필로 상대 찾기</a> <!-- 프로필로 상대 찾기 링크 -->
            <a href="/meetingRoomsMap">모임 찾기</a> <!-- 모임 찾기 링크 -->
        </div>
    </div>
    <script>
        function submitMatchForm() {
            document.getElementById('matchForm').submit();
        }
    </script>
</header>