SlideShare a Scribd company logo
Enviar pesquisa
Carregar
ReactでuseEffect()を減らしたい話
Denunciar
Compartilhar
iPride Co., Ltd.
iPride Co., Ltd.
Seguir
•
0 gostou
•
83 visualizações
1
de
11
ReactでuseEffect()を減らしたい話
•
0 gostou
•
83 visualizações
Denunciar
Compartilhar
Baixar agora
Baixar para ler offline
Tecnologia
2023/07/28の勉強会で発表されたものです。
Leia mais
iPride Co., Ltd.
iPride Co., Ltd.
Seguir
Recomendados
SPAセキュリティ入門~PHP Conference Japan 2021 por
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
99.6K visualizações
•
107 slides
SpringBootによるDB更新 por
SpringBootによるDB更新
iPride Co., Ltd.
185 visualizações
•
18 slides
外部キー制約に伴うロックの小話 por
外部キー制約に伴うロックの小話
ichirin2501
33K visualizações
•
29 slides
AIについて学んだこと ~ 生成AIとは? ~ por
AIについて学んだこと ~ 生成AIとは? ~
iPride Co., Ltd.
85 visualizações
•
32 slides
怖くないSpring Bootのオートコンフィグレーション por
怖くないSpring Bootのオートコンフィグレーション
土岐 孝平
3K visualizações
•
39 slides
君はyarn.lockをコミットしているか? por
君はyarn.lockをコミットしているか?
Teppei Sato
30.5K visualizações
•
25 slides
Mais conteúdo relacionado
Mais procurados
とある診断員とSQLインジェクション por
とある診断員とSQLインジェクション
zaki4649
78.6K visualizações
•
47 slides
マイクロサービス 4つの分割アプローチ por
マイクロサービス 4つの分割アプローチ
増田 亨
41.4K visualizações
•
60 slides
さくっと理解するSpring bootの仕組み por
さくっと理解するSpring bootの仕組み
Takeshi Ogawa
65.2K visualizações
•
38 slides
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws por
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
Tatsuo Kudo
13.4K visualizações
•
53 slides
Web開発者にお勧め .NET MAUI Blazor App por
Web開発者にお勧め .NET MAUI Blazor App
TomomitsuKusaba
731 visualizações
•
14 slides
Doma SQLテンプレートのしくみ por
Doma SQLテンプレートのしくみ
Toshihiro Nakamura
24.9K visualizações
•
52 slides
Mais procurados
(20)
とある診断員とSQLインジェクション por zaki4649
とある診断員とSQLインジェクション
zaki4649
•
78.6K visualizações
マイクロサービス 4つの分割アプローチ por 増田 亨
マイクロサービス 4つの分割アプローチ
増田 亨
•
41.4K visualizações
さくっと理解するSpring bootの仕組み por Takeshi Ogawa
さくっと理解するSpring bootの仕組み
Takeshi Ogawa
•
65.2K visualizações
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws por Tatsuo Kudo
OAuth / OpenID Connectを中心とするAPIセキュリティについて #yuzawaws
Tatsuo Kudo
•
13.4K visualizações
Web開発者にお勧め .NET MAUI Blazor App por TomomitsuKusaba
Web開発者にお勧め .NET MAUI Blazor App
TomomitsuKusaba
•
731 visualizações
Doma SQLテンプレートのしくみ por Toshihiro Nakamura
Doma SQLテンプレートのしくみ
Toshihiro Nakamura
•
24.9K visualizações
Proxy War por zaki4649
Proxy War
zaki4649
•
14.7K visualizações
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版) por Takuto Wada
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
•
70.7K visualizações
WebSocket / WebRTCの技術紹介 por Yasuhiro Mawarimichi
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
•
50.2K visualizações
AWS Elastic Beanstalk(初心者向け 超速マスター編)JAWSUG大阪 por 崇之 清水
AWS Elastic Beanstalk(初心者向け 超速マスター編)JAWSUG大阪
崇之 清水
•
30.6K visualizações
Cognitive Complexity でコードの複雑さを定量的に計測しよう por Shuto Suzuki
Cognitive Complexity でコードの複雑さを定量的に計測しよう
Shuto Suzuki
•
10.9K visualizações
ドメインオブジェクトの設計ガイドライン por 増田 亨
ドメインオブジェクトの設計ガイドライン
増田 亨
•
3.6K visualizações
ウェブセキュリティの常識 por Hiroshi Tokumaru
ウェブセキュリティの常識
Hiroshi Tokumaru
•
31.4K visualizações
Springを何となく使ってる人が抑えるべきポイント por 土岐 孝平
Springを何となく使ってる人が抑えるべきポイント
土岐 孝平
•
25.1K visualizações
ドメイン駆動設計 ( DDD ) をやってみよう por 増田 亨
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
•
50.1K visualizações
ウェブセキュリティのありがちな誤解を解説する por Hiroshi Tokumaru
ウェブセキュリティのありがちな誤解を解説する
Hiroshi Tokumaru
•
5.3K visualizações
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版 por Masahiro Nagano
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
Masahiro Nagano
•
55.5K visualizações
JavaScriptでSQLを唱えたいだけの人生だった por iPride Co., Ltd.
JavaScriptでSQLを唱えたいだけの人生だった
iPride Co., Ltd.
•
698 visualizações
Form認証で学ぶSpring Security入門 por Ryosuke Uchitate
Form認証で学ぶSpring Security入門
Ryosuke Uchitate
•
11.2K visualizações
GoによるWebアプリ開発のキホン por Akihiko Horiuchi
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
•
61K visualizações
Similar a ReactでuseEffect()を減らしたい話
20110517 okuyama ソーシャルメディアが育てた技術勉強会 por
20110517 okuyama ソーシャルメディアが育てた技術勉強会
Takahiro Iwase
1.3K visualizações
•
32 slides
20120405 setsunaセミナー por
20120405 setsunaセミナー
Takahiro Iwase
848 visualizações
•
50 slides
Gorinphp0729 por
Gorinphp0729
akitsukada
385 visualizações
•
73 slides
Gorinphp0729 por
Gorinphp0729
akitsukada
725 visualizações
•
73 slides
Rubyにおけるトレース機構の刷新 por
Rubyにおけるトレース機構の刷新
Koichi Sasada
21.5K visualizações
•
40 slides
20120317 IT系勉強会 in 神戸 por
20120317 IT系勉強会 in 神戸
Takahiro Iwase
821 visualizações
•
48 slides
Similar a ReactでuseEffect()を減らしたい話
(20)
20110517 okuyama ソーシャルメディアが育てた技術勉強会 por Takahiro Iwase
20110517 okuyama ソーシャルメディアが育てた技術勉強会
Takahiro Iwase
•
1.3K visualizações
20120405 setsunaセミナー por Takahiro Iwase
20120405 setsunaセミナー
Takahiro Iwase
•
848 visualizações
Gorinphp0729 por akitsukada
Gorinphp0729
akitsukada
•
385 visualizações
Gorinphp0729 por akitsukada
Gorinphp0729
akitsukada
•
725 visualizações
Rubyにおけるトレース機構の刷新 por Koichi Sasada
Rubyにおけるトレース機構の刷新
Koichi Sasada
•
21.5K visualizações
20120317 IT系勉強会 in 神戸 por Takahiro Iwase
20120317 IT系勉強会 in 神戸
Takahiro Iwase
•
821 visualizações
Java EE パフォーマンスTips #glassfish_jp por Norito Agetsuma
Java EE パフォーマンスTips #glassfish_jp
Norito Agetsuma
•
8.1K visualizações
HeapStats @ Seasar Conference 2015 LT por Yuji Kubota
HeapStats @ Seasar Conference 2015 LT
Yuji Kubota
•
3.9K visualizações
FP習熟度レベルとFSharpxのIteratee por pocketberserker
FP習熟度レベルとFSharpxのIteratee
pocketberserker
•
1.7K visualizações
Tottoruby 20110903 por Takashi SAKAGUCHI
Tottoruby 20110903
Takashi SAKAGUCHI
•
807 visualizações
JPAの同時実行制御とロック20140518 #ccc_r15 #jjug_ccc por Masatoshi Tada
JPAの同時実行制御とロック20140518 #ccc_r15 #jjug_ccc
Masatoshi Tada
•
10.8K visualizações
ssmjp 20210520 nlog2n2 tejun por Sekiguchi Toshihiro
ssmjp 20210520 nlog2n2 tejun
Sekiguchi Toshihiro
•
3K visualizações
R5 3 type annotation por EIICHI KIMURA
R5 3 type annotation
EIICHI KIMURA
•
2.8K visualizações
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8 por y_taka_23
思ったほど怖くない! Haskell on JVM 超入門 #jjug_ccc #ccc_l8
y_taka_23
•
21.2K visualizações
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム por Tomohiro Ohtake
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
Tomohiro Ohtake
•
2.1K visualizações
tcpdump & xtrabackup @ MySQL Casual Talks #1 por Ryosuke IWANAGA
tcpdump & xtrabackup @ MySQL Casual Talks #1
Ryosuke IWANAGA
•
5.5K visualizações
20121217 jawsug-yokohama por Tetsuya Chiba
20121217 jawsug-yokohama
Tetsuya Chiba
•
811 visualizações
知って得する標準関数の使い方 por Soudai Sone
知って得する標準関数の使い方
Soudai Sone
•
1.7K visualizações
Play framework 2.0のおすすめと1.2からのアップグレード por Kazuhiro Hara
Play framework 2.0のおすすめと1.2からのアップグレード
Kazuhiro Hara
•
8.6K visualizações
ioMemoryとAtomic Writeによるデータベース高速化 por IIJ
ioMemoryとAtomic Writeによるデータベース高速化
IIJ
•
2.5K visualizações
Mais de iPride Co., Ltd.
画像生成AIの問題点 por
画像生成AIの問題点
iPride Co., Ltd.
138 visualizações
•
9 slides
AI入門 por
AI入門
iPride Co., Ltd.
191 visualizações
•
99 slides
MVCになぞらえて理解するReact por
MVCになぞらえて理解するReact
iPride Co., Ltd.
220 visualizações
•
19 slides
OAuth2.0について por
OAuth2.0について
iPride Co., Ltd.
33 visualizações
•
18 slides
ゼロトラストについて学んだこと por
ゼロトラストについて学んだこと
iPride Co., Ltd.
23 visualizações
•
23 slides
Recoilライブラリを 触ってみる por
Recoilライブラリを 触ってみる
iPride Co., Ltd.
27 visualizações
•
11 slides
Mais de iPride Co., Ltd.
(20)
画像生成AIの問題点 por iPride Co., Ltd.
画像生成AIの問題点
iPride Co., Ltd.
•
138 visualizações
AI入門 por iPride Co., Ltd.
AI入門
iPride Co., Ltd.
•
191 visualizações
MVCになぞらえて理解するReact por iPride Co., Ltd.
MVCになぞらえて理解するReact
iPride Co., Ltd.
•
220 visualizações
OAuth2.0について por iPride Co., Ltd.
OAuth2.0について
iPride Co., Ltd.
•
33 visualizações
ゼロトラストについて学んだこと por iPride Co., Ltd.
ゼロトラストについて学んだこと
iPride Co., Ltd.
•
23 visualizações
Recoilライブラリを 触ってみる por iPride Co., Ltd.
Recoilライブラリを 触ってみる
iPride Co., Ltd.
•
27 visualizações
AIについて学んだこと ~ AIとは? ~ por iPride Co., Ltd.
AIについて学んだこと ~ AIとは? ~
iPride Co., Ltd.
•
21 visualizações
単一責任の原則について por iPride Co., Ltd.
単一責任の原則について
iPride Co., Ltd.
•
24 visualizações
オブジェクト指向 por iPride Co., Ltd.
オブジェクト指向
iPride Co., Ltd.
•
21 visualizações
JavaScriptで「キャピタライズ」を 実装してみる por iPride Co., Ltd.
JavaScriptで「キャピタライズ」を 実装してみる
iPride Co., Ltd.
•
26 visualizações
Pythonで学ぶ数理計画法の初歩 por iPride Co., Ltd.
Pythonで学ぶ数理計画法の初歩
iPride Co., Ltd.
•
22 visualizações
OIDC(OpenID Connect)について解説③ por iPride Co., Ltd.
OIDC(OpenID Connect)について解説③
iPride Co., Ltd.
•
33 visualizações
DrupalをDockerで起動してみる por iPride Co., Ltd.
DrupalをDockerで起動してみる
iPride Co., Ltd.
•
50 visualizações
HTTPの仕組みについて por iPride Co., Ltd.
HTTPの仕組みについて
iPride Co., Ltd.
•
29 visualizações
通信プロトコルについて por iPride Co., Ltd.
通信プロトコルについて
iPride Co., Ltd.
•
16 visualizações
OIDC(OpenID Connect)について解説① por iPride Co., Ltd.
OIDC(OpenID Connect)について解説①
iPride Co., Ltd.
•
49 visualizações
SpringBootにおけるテンプレートエンジンの活用 por iPride Co., Ltd.
SpringBootにおけるテンプレートエンジンの活用
iPride Co., Ltd.
•
174 visualizações
Java研修 por iPride Co., Ltd.
Java研修
iPride Co., Ltd.
•
21 visualizações
SpringBootの研修本で学んだこと por iPride Co., Ltd.
SpringBootの研修本で学んだこと
iPride Co., Ltd.
•
50 visualizações
画像生成AI stable diffusionの紹介2 por iPride Co., Ltd.
画像生成AI stable diffusionの紹介2
iPride Co., Ltd.
•
112 visualizações
Último
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」 por
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」
PC Cluster Consortium
66 visualizações
•
12 slides
The Things Stack説明資料 by The Things Industries por
The Things Stack説明資料 by The Things Industries
CRI Japan, Inc.
78 visualizações
•
29 slides
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) por
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
NTT DATA Technology & Innovation
32 visualizações
•
38 slides
SSH応用編_20231129.pdf por
SSH応用編_20231129.pdf
icebreaker4
405 visualizações
•
13 slides
IPsec VPNとSSL-VPNの違い por
IPsec VPNとSSL-VPNの違い
富士通クラウドテクノロジーズ株式会社
590 visualizações
•
8 slides
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向 por
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Hitachi, Ltd. OSS Solution Center.
101 visualizações
•
26 slides
Último
(12)
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」 por PC Cluster Consortium
PCCC23:富士通株式会社 テーマ1「次世代高性能・省電力プロセッサ『FUJITSU-MONAKA』」
PC Cluster Consortium
•
66 visualizações
The Things Stack説明資料 by The Things Industries por CRI Japan, Inc.
The Things Stack説明資料 by The Things Industries
CRI Japan, Inc.
•
78 visualizações
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) por NTT DATA Technology & Innovation
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
NTT DATA Technology & Innovation
•
32 visualizações
SSH応用編_20231129.pdf por icebreaker4
SSH応用編_20231129.pdf
icebreaker4
•
405 visualizações
IPsec VPNとSSL-VPNの違い por 富士通クラウドテクノロジーズ株式会社
IPsec VPNとSSL-VPNの違い
富士通クラウドテクノロジーズ株式会社
•
590 visualizações
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向 por Hitachi, Ltd. OSS Solution Center.
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Hitachi, Ltd. OSS Solution Center.
•
101 visualizações
光コラボは契約してはいけない por Takuya Matsunaga
光コラボは契約してはいけない
Takuya Matsunaga
•
27 visualizações
Windows 11 information that can be used at the development site por Atomu Hidaka
Windows 11 information that can be used at the development site
Atomu Hidaka
•
90 visualizações
PCCC23:東京大学情報基盤センター 「Society5.0の実現を目指す『計算・データ・学習』の融合による革新的スーパーコンピューティング」 por PC Cluster Consortium
PCCC23:東京大学情報基盤センター 「Society5.0の実現を目指す『計算・データ・学習』の融合による革新的スーパーコンピューティング」
PC Cluster Consortium
•
27 visualizações
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20... por NTT DATA Technology & Innovation
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
NTT DATA Technology & Innovation
•
158 visualizações
定例会スライド_キャチs 公開用.pdf por Keio Robotics Association
定例会スライド_キャチs 公開用.pdf
Keio Robotics Association
•
135 visualizações
SNMPセキュリティ超入門 por mkoda
SNMPセキュリティ超入門
mkoda
•
479 visualizações
ReactでuseEffect()を減らしたい話
1.
ReactでuseEffect() を減らしたい話 執筆者:トビウオ
2.
2回呼ばれるuseEffect() 今回操作するデータ型の定義 データ型を保持するstate 読み込んだデータをセットする
3.
2回呼ばれるuseEffect() • 左のようなコードは よく書かれがち • 何が問題なのか?
4.
2回呼ばれるuseEffect() • 左のようなコードは よく書かれがち • 何が問題なのか? ⇒useEffectが2回実 行されてしまう
5.
2回呼び出す理由は? https://react.dev/reference/react/useEffect#my-effect-runs-twice-when-the-component-mounts
6.
2回呼び出す理由は? https://react.dev/reference/react/useEffect#my-effect-runs-twice-when-the-component-mounts 「Strictモードが有効だと2回実行されるよ (要約)」
7.
2回呼び出す理由は? • useEffectは「べき等」でなければならない • =複数回実行しても表示が壊れない •
StrictModeは開発用の動作モードなので、意図的 に2度実行することで、ミスがないかを開発者に 確認させている
8.
2回呼び出さないようにするには? • StrictModeをやめる • ソースコードを工夫する •
useEffectを使わない
9.
「ソースコードを工夫する」 「1度読み込みしたか」を loaded変数に記憶しておき、 2回目は実行させないように する
10.
「useEffectを使わない」 loaded変数もuseStateで管理 し、2度目の読み込みを防止 する
11.
ちなみに • 先ほどのような「 useEffectを乱用しな い」コツについて、 公式サイトの記事と してまとまっている 。 https://react.dev/learn/you-might-not-need-an-effect