Skip to content

[Feat]: 헤더 구현#108

Merged
jisooooooooooo merged 9 commits intodevelopfrom
feat/#36/layoutHeaderFooter
Jul 14, 2025
Merged

[Feat]: 헤더 구현#108
jisooooooooooo merged 9 commits intodevelopfrom
feat/#36/layoutHeaderFooter

Conversation

@jisooooooooooo
Copy link
Copy Markdown
Collaborator

💡 Summary

#36

✅ Tasks

  • 헤더 구현
  • 로그인 유무에 따라 메뉴 노출 유무 결정

👀 To Reviewer

  • 스크롤했을 때 헤더 위쪽, 푸터 아래에 보이던 하얀 부분 보이지 않게 html에 배경색 지정했는데 다른 방법 있을지 고민해볼게요!

📸 Screenshot

@github-actions
Copy link
Copy Markdown

빌드 결과

빌드 실패 😵

@github-actions
Copy link
Copy Markdown

🎨 스토리북 배포 완료!

👉 스토리북 미리보기

변경된 컴포넌트의 디자인을 확인해주세요.

@github-actions
Copy link
Copy Markdown

빌드 결과

빌드 성공 🎉

@github-actions
Copy link
Copy Markdown

빌드 결과

빌드 성공 🎉

@github-actions
Copy link
Copy Markdown

빌드 결과

빌드 성공 🎉

@github-actions
Copy link
Copy Markdown

github-actions bot commented Jul 12, 2025

✅ Storybook 배포 완료! 🔗 https://6866a01b6253382f0f391b33-ilbkfxswdi.chromatic.com/

Copy link
Copy Markdown
Contributor

@kwonsaebom kwonsaebom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

현재 데탑으로 봤을 때 이렇게 떠서 요 부분만 수정한 다음에 말씀해주시면 다시 확인해보겠습니다 !!

스크린샷 2025-07-13 오후 6 46 17 스크린샷 2025-07-13 오후 6 46 05

Comment on lines 40 to 57
<>
<nav className={styles.navWrapper}>
{MENUS.map((menu) => (
<button
key={menu.label}
className={`${styles.navItem} ${activeMenu === menu.label ? styles.navItemActive : ''}`}
onClick={() => handleMenuClick(menu.label, menu.path)}
aria-current={activeMenu === menu.label ? 'page' : undefined}
>
{menu.label}
</button>
))}
</nav>
<div className={styles.profilePlaceholder} />
</>
) : (
<button className={styles.loginButton} onClick={handleLogin}>
로그인
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

p3) 조금 가독성이 떨어지는 것 같은데 요런 식으로 분리해보는 건 어떨까요 ?! 👀

const renderNavMenu = () => (
  <>
    <nav className={styles.navWrapper}>
      {MENUS.map((menu) => {
        const isActive = activeMenu === menu.label;
        const buttonClass = `${styles.navItem} ${isActive ? styles.navItemActive : ''}`;

        return (
          <button
            key={menu.label}
            className={buttonClass}
            onClick={() => handleMenuClick(menu.label, menu.path)}
            aria-current={isActive ? 'page' : undefined}
          >
            {menu.label}
          </button>
        );
      })}
    </nav>
    <div className={styles.profilePlaceholder} />
  </>
);

return (
  <header className={styles.header}>
    {isLoggedIn ? (
      renderNavMenu()
    ) : (
      <button className={styles.loginButton} onClick={handleLogin}>
        로그인
      </button>
    )}
  </header>
);


Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오호 바로 반영하겠슴둥~

@github-actions
Copy link
Copy Markdown

빌드 결과

빌드 성공 🎉

Copy link
Copy Markdown
Contributor

@Leeyoonji23 Leeyoonji23 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

만다"라트" 잘 봤습니다~

const MENUS = [
{ label: '나의 할 일', path: PATH.TODO },
{ label: '나의 만다르트', path: PATH.MANDAL },
{ label: '나의 만다라트', path: PATH.MANDAL },
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

p5) ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

@github-actions
Copy link
Copy Markdown

빌드 결과

빌드 성공 🎉

@github-actions
Copy link
Copy Markdown

🎨 스토리북 배포 완료!

👉 스토리북 미리보기

변경된 컴포넌트의 디자인을 확인해주세요.

@jisooooooooooo jisooooooooooo merged commit 89201a0 into develop Jul 14, 2025
4 checks passed
@jisooooooooooo jisooooooooooo deleted the feat/#36/layoutHeaderFooter branch July 24, 2025 05:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants