import { useContext, useEffect, useState } from 'react';
import { ThemeContext } from './ThemeContext';
export const Box = () => {
// const theme = useContext(ThemeContext);
const { primary, secondary } = useContext(ThemeContext);
// const [<상태 값 저장 변수>, <상태 값 갱신 함수>] = useState(<상태 초기 값>);
let bgColor = primary.main;
let txColor = primary.text;
const [statBgColor, setStatBgColor] = useState(bgColor);
const [statTxColor, setStatTxColor] = useState(txColor);
useEffect(() => {
setTimeout(() => {
setStatBgColor(secondary.main);
setStatTxColor(secondary.text);
console.log('색상변경!');
}, 3000);
}, []);
return <div style={{ backgroundColor: statBgColor, color: statTxColor }}>Theme context</div>;
};
제이쿼리 한줄이면 끝나는거 몇개를 써야되는거냐
상태, 훅 하나도 안써도되는걸 이따위로 짜놨네ㅋㅋ
훅 안쓰면 콜백 끝나도 렌더링 안되던디
prop으로 전달하면되지
https://ibb.co/ZVdF5Rf
배경색이 상태가 아니라면 이게 낳지 검색사 좆밥년아
리액트를 책으로만 배웠네 ㅋㅋ
이런 방법도 있구먼
근데 저라면 클래스를 넣어줄듯해욤 저렇게 배경과 텍스트색을 div에 넣어주지 않고, 클래스를 넣어서 css에서 처리...
아 요거 내가 보고 있는 예제에다가 응용으로 이것저것 해보는 중 ㅋㅋ
너도 리액트를 다루는 기술 보닝?
흐흐흐 화이팅이얌 &~~&