こんにちはフロントエンドエンジニアのまさにょんです!
今回は、ReactのuseStateでSetterによるStateの更新がされたら特定の処理をする方法について解説していきます。
目次
ReactでStateの更新が完了してから、特定の処理をする方法
ReactのuseState
フックを使って、SetterによってStateの更新が完了した後に特定の処理を実行する方法には、useEffect
フックを使う方法があります。
次のSampleでは、useEffect
フックの第2引数として[count]
を渡しています。
これはcount
が更新された場合にだけuseEffect
のコールバック関数を実行するように指定するためのものです。
import { useState, useEffect } from 'react';
function Example() {
// 1. State
const [count, setCount] = useState(0);
useEffect(() => {
// Stateが更新された際に実行したい処理を記述する!
console.log(`Count: ${count}`);
}, [count]);
const handleClick = () => {
setCount(count + 1);
};
return (
<div>
<p>Count: {count}</p>
<button onClick={handleClick}>Increment Count</button>
</div>
);
}
Twitterやってます!Follow Me!
神聖グンマー帝国の逆襲🔥
神聖グンマー帝国の科学は、世界一ぃぃぃぃぃぃ!!!!!