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
React on Rails workshop at Conferencia.ROR
Search
Prathamesh Sonpatki
October 13, 2016
0
110
React on Rails workshop at Conferencia.ROR
Prathamesh Sonpatki
October 13, 2016
Tweet
Share
More Decks by Prathamesh Sonpatki
See All by Prathamesh Sonpatki
Secrets to Monitor Kubernetes Workloads
prathamesh
1
51
The Complete Handbook to OpenTelemetry Metrics
prathamesh
1
25
Breaking down the Pillars of Observability: From data to outcomes
prathamesh
0
16
Monitoring vs. Debugging
prathamesh
0
42
Handling High Cardinality in Observability
prathamesh
1
48
Setting up Monitoring for Kubernetes
prathamesh
0
230
Monitoring vs. Debugging - SRE BLR Meetup
prathamesh
0
52
Monitoring vs. Debugging - IG Meetup 22nd July
prathamesh
2
66
Pune_User_Group.pdf
prathamesh
0
68
Featured
See All Featured
Unsuck your backbone
ammeep
662
57k
Thoughts on Productivity
jonyablonski
57
3.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
29
6k
Why Our Code Smells
bkeepers
PRO
331
56k
The Art of Programming - Codeland 2020
erikaheidi
41
12k
What's in a price? How to price your products and services
michaelherold
237
11k
Art, The Web, and Tiny UX
lynnandtonic
288
19k
Building Flexible Design Systems
yeseniaperezcruz
318
37k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
115
18k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
103
6.6k
4 Signs Your Business is Dying
shpigford
175
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
124
32k
Transcript
React on Rails workshop Prathamesh Sonpatki @_cha1tanya
None
Agenda
Why React?
Build UI
V in MVC
Declarative
if encodingCompleted removeLoader(); updateHeaderText(‘Encoding completed.’) else showLoader();
if encodingCompleted removeLoader(); updateHeaderText(‘Encoding completed.’) else showLoader(); if encodingCompleted <header>Encoding
Completed</header> else <div>Loading…</div>
Unconventional ideas
Components
None
<TweetCounts tweets=“3062” following=“509”/> <Tweets tweets={[..]}/> <Trends location=“pune" list={[..]} />
Reusable
None
Composable
None
Separation of concerns
No templates
React === JavaScript #=> true
Managing Data
Data changing over time is root of evil Pete Hunt
Props
One way data flow
State
Responding to state changes
Refresh
Re-Rendering the component
Re-Rendering the component tree
Re-Rendering
Isn’t it too slow?
Virtual DOM
Diff
Minimal set of changes
Nothing is new!
Let’s begin!
React❤Rails
react-rails + CDN packages
react_on_rails https://github.com/shakacode/ react_on_rails
sprockets_comm oner https://github.com/Shopify/sprockets- commoner
Thanks! @_cha1tanya @BigBinary http://blog.bigbinary.com http://videos.bigbinary.com https://github.com/prathamesh-sonpatki/react-rails-examples