TIL 220708

0

TIL

목록 보기
33/43

오늘도 토글이지만 오늘은 다크모드 토글 !!

import { atom } from "recoil";

export const DarkThemeAtom = atom({
    key:"DarkTheme",
    default:false,
}); // atom 생성
 const [isDark,setIsDark] = useRecoilState(DarkThemeAtom);
// 헤더 컴포넌트에서 불러오기
<ModeBtn onClick={() => setIsDark((prev) => !prev)}>
     <ModeCircle/>
</ModeBtn>
  // 버튼 클릭시 상태 변경 

이제 상태에 따라 토글 배경,버튼이 변경되어야 한다 !

styled-component 를 이용하기 때문에 props 로 넘겨주었다.

<ModeBtn onClick={() => setIsDark((prev) => !prev)} isDark={isDark}>
    <ModeCircle isDark={isDark}/>
</ModeBtn>
  background-image: 
  url(${(props) => (props.isDark ? `${darkMode}` : `${lightMode}`)});

0개의 댓글