浜松のWEBシステム開発・スマートフォンアプリ開発・RTK-GNSS関連の開発はお任せください
株式会社シーポイントラボ
TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス2F

【react】prevStateを使って前データと比較する

prevStateというオブジェクトをsetStateの際に使うと、変更前のデータを参照

できるようになります。

例えば、チェックボックスをタップしてtrueになった時は、必然的に

前のデータはfalseとなっています。

setState内でこのfalse・つまり以前のデータをprevStateとして扱い

新たに変更されたthis.state.checkと比較できるようになるわけです。

checked(){
  this.setState(prevState => ({check: !prevState.check}));
}
<Checkbox className="open-check" value={this.state.check} onChange={() => this.checked()}></Checkbox>今後このメッセージを表示しない

ラジオボタンとかにも使えそうです。

  • この記事いいね! (0)