7. condition of preserving state
다음 컴포넌트는 show
의 값에 따라 색상이 다른 Counter
컴포넌트를 반환한다.
function Counter({ color }) {
const [count, setCount] = useState(0);
return (
<div style={{ backgroundColor: color }}>
<p>{count}</p>
<button onClick={() => setCount(count + 1)}>increase count</button>
</div>
);
}
function App() {
const [show, setShow] = useState(true);
return (
<div>
{show ? <Counter color="red" /> : <Counter color="blue" />}
<button onClick={() => setShow(!show)}>toggle color</button>
</div>
);
}
"toggle color" 버튼을 누를 때 Counter
컴포넌트의 count
값은 초기화되는가? 계속 유지되는가?