Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
KentaIwadate
91 views
react勉強会 #4
react勉強会 #4 の資料です。
Engineering
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 7
2
/ 7
3
/ 7
4
/ 7
5
/ 7
6
/ 7
7
/ 7
More Related Content
PPTX
HTMLの要素の選び方
by
TENTO_slide
PDF
React Hooksでカスタムフックをつくろう
by
Yoichi Toyota
PPTX
今からでも遅くない! React事始め
by
ynaruta
PDF
React entry
by
Nobuaki Miura
PDF
Webアプリ開発入門_たくてぃん道場 React bootcamp by CraftStadium
by
CraftStaidium
PPTX
React入門
by
GIG inc.
PDF
React.jsでクライアントサイドなWebアプリ入門
by
spring_raining
PDF
React.js + Flux入門 #scripty02
by
Yahoo!デベロッパーネットワーク
HTMLの要素の選び方
by
TENTO_slide
React Hooksでカスタムフックをつくろう
by
Yoichi Toyota
今からでも遅くない! React事始め
by
ynaruta
React entry
by
Nobuaki Miura
Webアプリ開発入門_たくてぃん道場 React bootcamp by CraftStadium
by
CraftStaidium
React入門
by
GIG inc.
React.jsでクライアントサイドなWebアプリ入門
by
spring_raining
React.js + Flux入門 #scripty02
by
Yahoo!デベロッパーネットワーク
Similar to react勉強会 #4
PDF
Intoroduction to React.js
by
Yuto Matsukubo
PDF
Start React with Browserify
by
Muyuu Fujita
PPTX
SYSTEMI勉強会まとめ資料(React基礎まとめ)
by
YoshikiWatanabe1
PPTX
React+redux+saga 02
by
TIS Inc
PDF
React introduntion
by
YutaShimabukuro
PDF
React入門-JSONを取得して表示する
by
regret raym
PPTX
React+redux+saga 01
by
TIS Inc
PDF
図とコード例で多分わかる React と flux (工事中)
by
Teloo
PDF
Develop simpleappwithreacthooks
by
Genki Amagata
PPTX
React でフォームをスマートに実装する【weseek tech conf #11】
by
WESEEKWESEEK
PPTX
さわってみようReact.js、AngularJS(1系、2系)
by
Kazuhiro Yoshimoto
PDF
raect.jsを触ったお話
by
Ryuuichi Iha
PDF
Reactテストに役立つ実装の工夫
by
鉄平 土佐
PPTX
まだDOM操作で消耗してるの?
by
IRI MO
PDF
Reactとbabelで簡易タスク管理ツール作ってみた
by
Tsuyoshi Maeda
PDF
React18.2以降で追加されたHooksについて
by
hirokinishiura
PDF
フロントエンド開発入門(React).pdf
by
KSato2
PPTX
React+redux+saga 03
by
TIS Inc
PPTX
Reactに触れてみた
by
iPride Co., Ltd.
Intoroduction to React.js
by
Yuto Matsukubo
Start React with Browserify
by
Muyuu Fujita
SYSTEMI勉強会まとめ資料(React基礎まとめ)
by
YoshikiWatanabe1
React+redux+saga 02
by
TIS Inc
React introduntion
by
YutaShimabukuro
React入門-JSONを取得して表示する
by
regret raym
React+redux+saga 01
by
TIS Inc
図とコード例で多分わかる React と flux (工事中)
by
Teloo
Develop simpleappwithreacthooks
by
Genki Amagata
React でフォームをスマートに実装する【weseek tech conf #11】
by
WESEEKWESEEK
さわってみようReact.js、AngularJS(1系、2系)
by
Kazuhiro Yoshimoto
raect.jsを触ったお話
by
Ryuuichi Iha
Reactテストに役立つ実装の工夫
by
鉄平 土佐
まだDOM操作で消耗してるの?
by
IRI MO
Reactとbabelで簡易タスク管理ツール作ってみた
by
Tsuyoshi Maeda
React18.2以降で追加されたHooksについて
by
hirokinishiura
フロントエンド開発入門(React).pdf
by
KSato2
React+redux+saga 03
by
TIS Inc
Reactに触れてみた
by
iPride Co., Ltd.
Recently uploaded
PDF
Kubernetes Release Team Release Signal Role について ~Kubernetes Meetup Tokyo #72~
by
Keisuke Ishigami
PDF
0.0001秒の攻防!?快適な運転を支えるリアルタイム制御と組み込みエンジニアの実践知【DENSO Tech Night 第四夜】
by
dots.
PDF
Nanami Doikawa_寄り道の誘発を目的とした旅行写真からのスポット印象語彙の推定に関する基礎検討_EC2025
by
Matsushita Laboratory
PDF
Rin Ukai_即興旅行の誘発を目的とした口コミ情報に基づく雰囲気キーワード_EC2025.pdf
by
Matsushita Laboratory
PDF
サーバーサイド Kotlin を社内で普及させてみた - Server-Side Kotlin Night 2025
by
Hirotaka Kawata
PPTX
「グローバルワン全員経営」の実践を通じて進化し続けるファーストリテイリングのアーキテクチャ
by
Fast Retailing Co., Ltd.
PPTX
【ASW22-01】STAMP:STPAロスシナリオの発想・整理支援ツールの開発 ~astah* System Safetyによる構造化・階層化機能の実装...
by
csgy24013
Kubernetes Release Team Release Signal Role について ~Kubernetes Meetup Tokyo #72~
by
Keisuke Ishigami
0.0001秒の攻防!?快適な運転を支えるリアルタイム制御と組み込みエンジニアの実践知【DENSO Tech Night 第四夜】
by
dots.
Nanami Doikawa_寄り道の誘発を目的とした旅行写真からのスポット印象語彙の推定に関する基礎検討_EC2025
by
Matsushita Laboratory
Rin Ukai_即興旅行の誘発を目的とした口コミ情報に基づく雰囲気キーワード_EC2025.pdf
by
Matsushita Laboratory
サーバーサイド Kotlin を社内で普及させてみた - Server-Side Kotlin Night 2025
by
Hirotaka Kawata
「グローバルワン全員経営」の実践を通じて進化し続けるファーストリテイリングのアーキテクチャ
by
Fast Retailing Co., Ltd.
【ASW22-01】STAMP:STPAロスシナリオの発想・整理支援ツールの開発 ~astah* System Safetyによる構造化・階層化機能の実装...
by
csgy24013
react勉強会 #4
1.
react勉強会#4 本⽇のテーマ React Hooks を学ぼう 本⽇の達成⽬標 カウンター機能の完成 学習内容 React
Hooksとは? React Hooks は、React のさまざまな機能をクラスを書かずに使えるようになる機能 公式ページ: https://ja.reactjs.org/docs/hooks-intro.html React Hooksのメリット 参考: https://qiita.com/Mitsuzara/items/98d1bc4a83265a764084 簡単に⾔うとクラスよりも記述が簡潔になることがメリットです。 どれくらい簡潔になるかは次の⽐較をご覧ください。 ⽐較 同じ処理をする機能を、クラスとフックそれぞれ使って書くと... クラス
2.
import React from
'react' export default class App extends React.Component { constructor(props) { super(props) this.state = { count: 0 } } render() { return ( <> <p>You clicked {this.state.count} times</p> <button onClick={() => this.setState({ count: this.state.count + 1 })}> Click me </button> </> ) } } フック import React, { useState } from 'react' export default const App = () => { const [count, setCount] = useState(0) return ( <> <p>You clicked {count} times</p> <button onClick={() => setCount(count + 1)}> Click me </button> </> ) } 以上のようにフックで書いた⽅がコード量が少なくなっています。 では、フックがどこに登場してるかというと、上記フックコード 4 ⾏⽬にある useState がフックになりま す。 フックは、名前が use~~~ のように use から始まる関数のことを指します。 ※厳密には use を使わなくてもよいですが、React ではこの命名規則を推奨しています。 useState 以外にもフックはありますが、その中でも頻繁に使うフックについて後程⾒ていきます。 React Hooksのデメリット
3.
React の全ての機能が使えるようになるわけではないこと。 フックで書けない場合はクラスを使いましょう。 頻繁に使うHooks ここでは React
で開発する際に、頻繁に使うフック useState と useEffect を紹介します。 useState 先ほどの例で出てきた useState は、state (状態) を管理するためのフックです。 例えば、ボタンを押すと 1 ずつ増えていく数字のように、何かしらアクションを起こすと値が変化してい く変数を扱いたいときは、この useState を使います。 具体的に、次のコードを使って説明します。 import React, { useState } from 'react'; function Example() { const [count, setCount] = useState(0); return ( <div> <p>You clicked {count} times</p> <button onClick={() => setCount(count + 1)}> Click me </button> </div> ); } まず、1 ⾏⽬ import React, { useState } from 'react'; で useState を react パッケージから import します。 次に、関数の中⾝を⾒ると、 function Example() { const [count, setCount] = useState(0); ...... } useState が出てきます。 ここで、ポイントとなるのが「フックは関数コンポーネント内で使う」です。 以下のように関数の外で定義したり、 const [count, setCount] = useState(0); function Example() { ...... }
4.
以下のようにクラス内で定義しても使⽤できないので注意してください。 class Example extends
React.Component { const [count, setCount] = useState(0); ...... } 先ほどのコードに戻り、useState がある箇所を⾒ると、 const [count, setCount] = useState(0); となっています。 これを⼀般的に書くと次のようになります。 const [ 変数hoge, 変数hogeを操作する関数setHoge] = useState(hogeの初期値); つまり、先のコードは初期値を 0 とする変数 count とその count を操作する関数 setCount を⽤意したこ とになります。 次に、return されてる JSX ⽂を⾒てみましょう。 <div> <p>You clicked {count} times</p> <button onClick={() => setCount(count + 1)}> Click me </button> </div> まず、pタグ内 <p>You clicked {count} times</p> では、現在の count の値が表⽰されます。 button タグでは onClick 属性が指定されているので、ボタンを押すことで、 () => setCount(count + 1) というイベントが発⽣します。 ちなみに、() => ~~~ は、アロー関数 (https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Functions/Arrow_functions) と いいます。 setCount(count + 1) で、現在の count の値に +1 されます。 実際に上記のコードを実⾏してみると、count が 0 から始まり、ボタンを押すごとに +1 されていくのが わかります。 演習問題 次の機能を useState を使って実装してみましょう。 1. ボタンを押すと、ある⽂字(例えば、「hoge」など)が表⽰されたり⾮表⽰になったりする。 2. ある変数に対して、ボタンを押すと +2 される。ただし、この変数はボタンを押した回数によって
5.
表⽰されたり、⾮表⽰される。奇数回ボタンを押すと⾮表⽰、偶数回ボタンを押すと表⽰される。 useEffect useEffect は、レンダリング(コードの内容が画⾯に反映されること)直後や、ある変数の値が変わった際 に呼ばれるフックです。 この2つのタイミングそれぞれで useEffect
の書き⽅が多少異なります。 レンダリング直後 まず、ブラウザのコンソールを開き、次のコードを実⾏してみましょう。 import React, { useEffect } from 'react' function Example() { useEffect(() => { console.log('Hello useEffect!') }) return ( <p>Hello, World!</p> ); } すると、ブラウザ画⾯には ”Hello World!” が表⽰され、コンソール上には ”Hello useEffect!” が表⽰され ると思います。 まず画⾯上に ”Hello World!” が表⽰(レンダリング)されてからコンソール上で ”Hello useEffect!” が出 ⼒されるといった動作の流れになっています。 コードを⾒ると、関数内には以下のように useEffect フックがあります。 useEffect(() => { console.log('Hello useEffect!') }) useEffect は第⼀引数に関数を⼊れることで、レンダリング直後にその関数が実⾏されます。 ある変数の値が変わったタイミング useEffect は第⼀引数だけでなく第⼆引数も指定できます。 具体的には、配列型の変数を指定し、その要素として関数コンポーネント内で使われている変数を⼊れるこ とで以下のような形になります。 useEffect( 関数, [hoge1, hoge2, ...]) ※ hoge1, hoge2 は関数コンポーネント内の変数 第⼆引数がある場合はその要素のいずれか(hoge1、hoge2のどれか)が変化した場合に第⼀引数の関数が 実⾏されます。 それでは、第⼆引数がある useEffect の例を⾒ていきましょう。
6.
import React, {
useState, useEffect } from 'react'; function Example() { const [count, setCount] = useState(0); useEffect(() => { console.log('現在のcountの値は' + count + 'です!'); }, [count]) return ( <div> <p>You clicked {count} times</p> <button onClick={() => setCount(count + 1)}> Click me </button> </div> ); } ここでは、useState で指定した変数 count が変化する毎に useEffect が呼ばれます。 このように、useState と useEffect を組み合わせて使うことはよくあります。 また、useEffect( 関数, []) のように配列の要素を空にした場合は、useEffect( 関数 ) のように第⼆引数を指 定しない場合と同じく、レンダリング直後に第⼀引数の関数が実⾏されます。 演習問題 次の機能を useState、useEffect を使って実装してみましょう。 1. ボタンを押すと 1 ずつ加算していく数字がある。この数字が、3 になった場合のみコンソール上 に適当な⽂字(例えば、「hoge」など)を表⽰する。 2. 1 つの int 型変数 (初期値0) と 1 つの Boolean 型変数 (初期値false) を⽤意する。前者はボタンを 押すごとに 1 ずつ加算されていき、後者は前者の数字の値が 3 になった場合に true に変わる。 Boolean 型変数が true に変わったら、コンソール上に適当な⽂字 ( 例えば、「hoge」など ) を表 ⽰する。 参考記事 useState や useEffect については、以下の記事もおすすめですので、是⾮あわせてご覧ください。 https://reffect.co.jp/react/react-hook-usestate-understand https://reffect.co.jp/react/react-useeffect-understanding フックのルールについては以下の公式ドキュメントをご覧ください。 https://ja.reactjs.org/docs/hooks-rules.html#explanation まとめ 今回は React Hooks ついて基本的なフック (useStateとuseEffect) を⽤いて学びました。他にも様々なフ ックがあるので、実際に活⽤できるよう引き続き学習をしていきましょう。 お知らせ
7.
チャットツール「discord」で勉強会の告知や、やりとりの場を設けております。 もしよろしければ下記 URL からご参加ください。 https://discordapp.com/invite/fr8CqPH
Download