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
140
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
100
The Complete Handbook to OpenTelemetry Metrics
prathamesh
1
71
Breaking down the Pillars of Observability: From data to outcomes
prathamesh
0
85
Monitoring vs. Debugging
prathamesh
0
160
Handling High Cardinality in Observability
prathamesh
1
100
Setting up Monitoring for Kubernetes
prathamesh
0
300
Monitoring vs. Debugging - SRE BLR Meetup
prathamesh
0
88
Monitoring vs. Debugging - IG Meetup 22nd July
prathamesh
2
110
Pune_User_Group.pdf
prathamesh
0
110
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Being A Developer After 40
akosma
91
590k
My Coaching Mixtape
mlcsv
0
48
Testing 201, or: Great Expectations
jmmastey
46
8k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Building an army of robots
kneath
306
46k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
140
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
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