choigirang / portfolio

포트폴리오 v1
https://v1.choigirang-portfolio.site
0 stars 0 forks source link

Header: Tabs, Tab value invalid #11

Open choigirang opened 6 months ago

choigirang commented 6 months ago

return ( <Header $scroll={scroll}>

Girang's
  <Tabs
    value={currentPath.pathname !== '/' ? currentPath.pathname : '/home'}
    sx={{ '& .MuiTabs-indicator': { backgroundColor: 'transparent' } }}>
    {lists.map(list => (
      <TabList
        key={list}
        label={list.replace('/', '')}
        value={'/' + list}
        to={list}
        component={Link}
        onClick={() => scrollToPage(list)}
      />
    ))}
  </Tabs>
</Header>

);

```jsx
// 변경 후
const lists = {
  home: <HomeIcon></HomeIcon>,
  about: <PersonIcon></PersonIcon>,
  skills: <ArticleIcon></ArticleIcon>,
  project: <AutoAwesomeMosaicIcon></AutoAwesomeMosaicIcon>,
  contact: <ConnectWithoutContactIcon></ConnectWithoutContactIcon>,
};

return (
    <Header $scroll={scroll}>
      <Logo variant="h1" onClick={scrollToTop}>
        Girang's
      </Logo>
      <Tabs value={currentPath.pathname !== '/' ? currentPath.pathname : '/home'} sx={{ '& .MuiTabs-indicator': { backgroundColor: 'transparent' } }}>
        {Object.entries(lists).map(([key, value]) => (
          <TabListWithIcons key={key}>
            {value}
            <TabList label={key} value={'/' + key} to={'/' + key} component={Link} onClick={() => scrollToPage(key)} />
          </TabListWithIcons>
        ))}
      </Tabs>
    </Header>
  );
choigirang commented 6 months ago

const listsIcon: { [key: string]: ReactNode } = { 홈: , 소개: , 기술: , 프로젝트: , 연락망: , };

// 주소 목록 const lists = ['home', 'about', 'skills', 'project', 'contact'];

return ( <Header $scroll={scroll}>

Girang's
  <Tabs
    value={currentPath.pathname !== '/' ? currentPath.pathname : '/home'}
    sx={{ '& .MuiTabs-indicator': { backgroundColor: 'transparent' } }}>
    {lists.map(list => (
      <TabList
        key={list}
        label={
          <TabListWithIcons activeUrl={list === currentPath.pathname.replace('/', '')}>
            {listsIcon[listsLabel[list]]}
            <div className="labelKor">{listsLabel[list]}</div>
          </TabListWithIcons>
        }
        value={'/' + list}
        to={list}
        component={Link}
        onClick={() => scrollToPage(list)}
      />
    ))}
  </Tabs>
</Header>

);