と let / push を見直す A. 副作用の混入 NG function Now() { const t = Date.now(); // NG return <p>{t}</p>; } OK function Now() { const t = useNow(); // OK return <p>{t}</p>; } B. ミュータブル操作 NG const sorted = items; sorted.sort((a, b) => a.id - b.id); // props.items を破壊 OK const sorted = [...items].sort( (a, b) => a.id - b.id ); 「render は値を返す関数」— 副作用は useEffect / イベントハンドラ / 専用フックに切り出す 13 / 24 PeopleX