SlideShare a Scribd company logo
By Genki Amagata
ReactHooksで開発してみた
@React LT会
〜最近学び始めた方から業務でバリバリ使っている方まで〜
社内のシャッフルランチで使うグループ分けアプリ
天方 元紀
株式会社 ウリドキネット
開発マネージャー
TW: @GenkiAma
Github: genk1
Rails x Vuejsの会社に勤務する、React x
Firebaseに興味を持っていろいろ個人開発をして
いる非エンジニア。
Web業界に入る前はPepperのアプリケーション開
発や営業、マーケティング業務などやってきた。
今は目下サービスの立ち上げとリリース後のグ
ロースで挑戦している。
興味:
Firebase x React x JAM stack x 一応Vue
今日の内容
- Projectが始まった経緯
- Projectを始める前にやったこと
- 実際に使ってみて
- まとめ
プロジェクトはいきなり開始した
とある打ち合わせ中
Genkiくん、シャッフルランチの
チーム分けアプリ簡単に作ってよ
とある打ち合わせ中
Genkiくん、シャッフルランチの
チーム分けアプリ簡単に作って
よ
!!???
とある打ち合わせ中
Genkiくん、シャッフルランチの
チーム分けアプリ簡単に作って
よ
!!???
あ、、はい
とある打ち合わせ中
Genkiくん、シャッフルランチの
チーム分けアプリ簡単に作って
よ
あ、、はい
とりあえずやることを確認
やること一覧
- メンバーが一覧で表示されている
- 急な参加・不参加に対応できるように簡単なState管理
- 表示するときに順番にゆっくり表示される
Develop simpleappwithreacthooks
React Hooksでやってみよう!
やること一覧
- メンバーが一覧で表示されている
=> useState
- 急な参加・不参加に対応できるように簡単なState管理
=> useReducer
- 表示するときに順番にゆっくり表示される
=> useEffect
useState とは
You might have previously known these as “stateless components”. We’re now introducing the
ability to use React state from these, so we prefer the name “function components”.
これまでstate管理をするにはClass Componentでしかできなかったけど 昔
の Stateless Components => 現: function componentsで出来るように
なったってことね!
useState とは
useEffect とは
If you’re familiar with React class lifecycle methods, you can think of useEffect Hook as
componentDidMount, componentDidUpdate, and componentWillUnmount combined.
これまでのClass ComponentにおけるLifecycle、
componentDidMount | DidUpdate | WillUnmount が簡単に使える
機能ね!
useEffect とは
useReducer とは
An alternative to useState. Accepts a reducer of type (state, action) => newState, and returns the
current state paired with a dispatch method. (If you’re familiar with Redux, you already know how
this works.)
ReduxでやっていたようなDispatchが必要になるState管理ができるように
なるってことね
useReducer とは
実際のアプリはこんな感じ
github: https://github.com/genk1/shaffle-lunch
実際のアプリ
参考にしているサイト
- Pod Cast : https://reactpodcast.com
- React : https://chantastic.org/
今後やっていくこと
今後やっていくこと
- ログイン機能
- ページング
- useContext API
まとめ
まとめ
- Classから書き換えなくていいからめっちゃ楽
- 結構 useEffectが使いやすい
- useStateの formはまだ必要性がわかっていない

More Related Content

PDF
LIGにおけるフロントエンドチーム構築
PDF
Angularおじさんの1年
PDF
U1w共有会 21/10/09
PDF
Laravel管理画面ジェネレーター
PPTX
属人化したフロントエンドのJavaScriptを、 ‘新規機能開発を止めずに’改善するために行った取り組みについて。 及びその経過報告。
PPTX
Dive into Origami Studio
PDF
Go Friday 傑作選
PDF
Goにおけるバージョン管理の必要性 − vgoについて −
LIGにおけるフロントエンドチーム構築
Angularおじさんの1年
U1w共有会 21/10/09
Laravel管理画面ジェネレーター
属人化したフロントエンドのJavaScriptを、 ‘新規機能開発を止めずに’改善するために行った取り組みについて。 及びその経過報告。
Dive into Origami Studio
Go Friday 傑作選
Goにおけるバージョン管理の必要性 − vgoについて −

What's hot (20)

PDF
いい感じのフロントエンド開発環境を作ってみた
PDF
Next.js Storybook Driven Development
PDF
PhoneGapで作るハイブリッドアプリケーション
ODP
Google APP Engine vs リアルタイムウェブ
PPTX
Reactive Programing
PDF
Gaelyk
PDF
WebAssembly with Go
PDF
スッとGoを取り入れる
PDF
Mattermost Plugin Bounty Programについて
PPTX
Google PageSpeed Insights 得点向上のための改善 - VASILY フロントエンドインターン 成果報告-
PDF
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
PPTX
Visual Studio2013 でGithub(1) セットアップ~同期
PPTX
研修成果プレゼン資料
PDF
会社にGitHub Enterpriseを導入してみた話
PDF
North Starアプリ作り,海外コミュニティ,Tips
PDF
Namespace API を用いたマルチテナント型 Web アプリの実践
PPTX
2010/8/27 TechEd2010 ライトニングトーク
PDF
粗探しをしてGoのコントリビューターになる方法
PDF
Google apps scriptを使って業務改善
PDF
Angularモダンweb開発セミナー紹介 20170923
いい感じのフロントエンド開発環境を作ってみた
Next.js Storybook Driven Development
PhoneGapで作るハイブリッドアプリケーション
Google APP Engine vs リアルタイムウェブ
Reactive Programing
Gaelyk
WebAssembly with Go
スッとGoを取り入れる
Mattermost Plugin Bounty Programについて
Google PageSpeed Insights 得点向上のための改善 - VASILY フロントエンドインターン 成果報告-
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
Visual Studio2013 でGithub(1) セットアップ~同期
研修成果プレゼン資料
会社にGitHub Enterpriseを導入してみた話
North Starアプリ作り,海外コミュニティ,Tips
Namespace API を用いたマルチテナント型 Web アプリの実践
2010/8/27 TechEd2010 ライトニングトーク
粗探しをしてGoのコントリビューターになる方法
Google apps scriptを使って業務改善
Angularモダンweb開発セミナー紹介 20170923
Ad

Similar to Develop simpleappwithreacthooks (20)

PPTX
React Nativeという技術選択
PDF
はじめてがアジャイル
PDF
ReactとImmutable.jsで関数型を体験してみて思ったこと #scripty06
PPTX
Web開発初心者がReactをチームに導入して半年経った
PPTX
RESTからGraphQL APIへの移行で学んだこと.pptx
PDF
WebエンジニアのReactNativeでの戦い方
PDF
20141003 webマーケティングエンジニアリング
PPTX
React NativeでTwitterクライアントを作ってみよう
PDF
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
PDF
20130622_android横須賀_LT
PDF
Vue.js Outline
PPTX
``完璧に理解した``WEB の裏側の仕組み.pptx
PDF
ReactNative + Redux + NativeBaseでつくるサンプル実装をのぞく
PDF
ひよこテスト駆動開発(PHPカンファレンス2014)
PPTX
ログインの全て
PPTX
SYSTEMI勉強会まとめ資料(日記アプリ作成)
PDF
GitLab Prometheus
PDF
firebase hackathon - おもちかえログ(仮)
PPTX
GoogleAnalyticsを使った効果測定
PDF
Storybook web-and-circleci
React Nativeという技術選択
はじめてがアジャイル
ReactとImmutable.jsで関数型を体験してみて思ったこと #scripty06
Web開発初心者がReactをチームに導入して半年経った
RESTからGraphQL APIへの移行で学んだこと.pptx
WebエンジニアのReactNativeでの戦い方
20141003 webマーケティングエンジニアリング
React NativeでTwitterクライアントを作ってみよう
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
20130622_android横須賀_LT
Vue.js Outline
``完璧に理解した``WEB の裏側の仕組み.pptx
ReactNative + Redux + NativeBaseでつくるサンプル実装をのぞく
ひよこテスト駆動開発(PHPカンファレンス2014)
ログインの全て
SYSTEMI勉強会まとめ資料(日記アプリ作成)
GitLab Prometheus
firebase hackathon - おもちかえログ(仮)
GoogleAnalyticsを使った効果測定
Storybook web-and-circleci
Ad

Develop simpleappwithreacthooks