Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ReactJS Awesomeness
Search
Swaroop SM
July 28, 2015
Programming
3
260
ReactJS Awesomeness
A quick introduction to ReactJS
Swaroop SM
July 28, 2015
Tweet
Share
More Decks by Swaroop SM
See All by Swaroop SM
Client-Side Data Modelling and more...
swaroopsm
0
59
Testing JavaScript like a "BOSS"
swaroopsm
0
61
The Truth About Truthy & Falsy
swaroopsm
1
56
Other Decks in Programming
See All in Programming
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
930
チームの境界をブチ抜いていけ
tokai235
0
230
ドメイン駆動設計のエッセンス
masuda220
PRO
7
1.5k
Pythonに漸進的に型をつける
nealle
1
130
Go言語はstack overflowの夢を見るか?
logica0419
0
610
釣り地図SNSにおける有料機能の実装
nokonoko1203
0
200
bootcamp2025_バックエンド研修_WebAPIサーバ作成.pdf
geniee_inc
0
130
React Nativeならぬ"Vue Native"が実現するかも?_新世代マルチプラットフォーム開発フレームワークのLynxとLynxのVue.js対応を追ってみよう_Vue Lynx
yut0naga1_fa
2
1.6k
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
100
オンデバイスAIとXcode
ryodeveloper
0
130
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
160
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
510
Featured
See All Featured
Navigating Team Friction
lara
190
15k
Site-Speed That Sticks
csswizardry
13
930
Context Engineering - Making Every Token Count
addyosmani
8
300
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
620
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
For a Future-Friendly Web
brad_frost
180
10k
Agile that works and the tools we love
rasmusluckow
331
21k
It's Worth the Effort
3n
187
28k
Producing Creativity
orderedlist
PRO
347
40k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Making Projects Easy
brettharned
120
6.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
Transcript
ReactJS Awesomeness
I don’t want to learn another JS framework.
Well what is it then?
• Born at Facebook. • Lets you build user interfaces.
• Described as the V in MVC. • Building large applications with data that changes over time. • Actively maintained. • https://github.com/facebook/react
I AM NOT CONVINCED
TIME TO GET SERIOUS
What it does not have? • No Router. • No
Controllers. • No Models. • No Templates.
What does it have then? • Components • And Components
• …. And Components
Separation of Concerns • Controller • Remove an item. •
Compl
Separate the Components
Component-Wise Separation • Composable • Reusable • Maintainable • Testable
STILL NO “REACTION?”
React Stuffs • Component • JSX • props • state
• refs • Virtual DOM • Server-Side Rendering
Component • Elements in view. Eg.: Button Widget, Shopping Cart
Widget etc. • `React.createClass({ })` • Must override the render method
None
JSX • A JS syntax extension that looks like XML
• Can be transformed into JS using React
None
props • Immutable • Attributes to a component. • Accessible
through `this.props`
None
state • Mutable • Set using `setState` • Access via
`this.state` • Triggers a render automatically when a state changes
None
refs • Lets you access references to individual components •
Manipulate the DOM • Use `this.refs`
None
Virtual DOM • Virtual Representation of DOM • Can keep
track of what has changes in the DOM • Render only the changed parts based on a diffing algorithm • VERY FAST!!!
Server-Side Rendering • Construct React components as an HTML on
the server-side and render it. • SEO for Free :)
Integrating with Rails • https://github.com/reactjs/react-rails • react_component(<Button />, props={}, html_options={})
#jally Thank You