Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
React and React Native

You're reading from   React and React Native A complete hands-on guide to modern web and mobile development with React.js

Arrow left icon
Product type Paperback
Published in Apr 2020
Publisher Packt
ISBN-13 9781839211140
Length 526 pages
Edition 3rd Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Adam Boduch Adam Boduch
Author Profile Icon Adam Boduch
Adam Boduch
Roy Derks Roy Derks
Author Profile Icon Roy Derks
Roy Derks
Arrow right icon
View More author details
Toc

Table of Contents (33) Chapters Close

Preface 1. Section 1: React
2. Why React? FREE CHAPTER 3. Rendering with JSX 4. Component Properties, State, and Context 5. Getting Started with Hooks 6. Event Handling - The React Way 7. Crafting Reusable Components 8. The React Component Life Cycle 9. Validating Component Properties 10. Handling Navigation with Routes 11. Code Splitting Using Lazy Components and Suspense 12. Server-Side React Components 13. User Interface Framework Components 14. Section 2: React Native
15. Why React Native? 16. Kick-Starting React Native Projects 17. Building Responsive Layouts with Flexbox 18. Navigating Between Screens 19. Rendering Item Lists 20. Showing Progress 21. Geolocation and Maps 22. Collecting User Input 23. Displaying Modal Screens 24. Responding to User Gestures 25. Controlling Image Display 26. Going Offline 27. Section 3: React Architecture
28. Native UI Components Using NativeBase 29. Handling Application State 30. Why Apollo? 31. Building an Apollo React App 32. Other Books You May Enjoy

Refactoring component structures

You have a monolithic feature component—now what? Let's make it better.

In this section, you'll learn how to take the feature component that you just implemented in the preceding section and split it into more maintainable components. You'll start with the JSX, as this is probably the best refactor starting point. Then, you'll implement new components for the feature.

Next, you'll make these new components functional, instead of class-based. Finally, you'll learn how to use render props to reduce the number of direct component dependencies in your application and how to remove classes entirely by using Hooks to manage state within functional components.

Starting with the JSX

The JSX of any monolithic component is the best starting point for figuring out how to refactor it into smaller components. Let's visualize the structure of the component that we're currently refactoring:

The top part of the JSX is the...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime