Stay up to date with the latest news on React.
View this email in your browser

The React Newsletter

Hi <<First Name>>,
Is Concurrent Mode just a workaround for “virtual DOM diffing” overhead?

Is Concurrent Mode just a workaround for “virtual DOM diffing” overhead? Some people got that impression. Let me clarify why we’re working on it. (Thread)

1. Time slicing keeps React responsive while it runs your code. Your code isn’t just DOM updates or “diffing”. It’s any JS logic you do in your components! Sometimes you gotta calculate things. No framework can magically speed up arbitrary code.

2. Making updates really fast is a great goal. However, how many of the interactions in apps you use are “very fast updates to existing nodes”, as opposed to “replacing a part of the screen with new content”? Go ahead and count them.

Read more
When to use React Suspense vs React Hooks
Monads and Applicative Functors are extensively used in functional programming. There is a relationship between them and React Suspense for Data Fetching and React Hooks APIs. This is a quick and simple introduction to Monads and Applicatives along with a description of their similarities.

The post is about future React Suspense for Data Fetching, not about recently released React Suspense for Code Splitting (React.Suspense and React.lazy) .

Read more
Requisite React - Kent C. Dodds
React is a brilliant JavaScript library for building simple and complex user interfaces. In our eagerness to apply React to our most complex of problems and ship solutions today, we can get lost in the 🌲🌲🌲 forest of abstractions 🌲🌲🌲. When it comes to leveling up our skills in anything, I find the most effective method is to take a step back and understand the foundational fundamentals. To strip away all abstraction until what we're left with is the bare bones. The better you understand an abstraction, the more effective you will be at using it. In this talk, we'll get more effective at using React Hooks, React Suspense, and JSX.

Watch video
A Closer Look at React Memoize Hooks: useRef, useCallback, and useMemo

The best way to understand what memoize hooks are is to expose ourselves to the problem space which these hooks solve. Starter hooks examples don’t expose these problems. They make hooks look approachable and straightforward— which makes complete sense.

The real problem starts to unravel when you use hooks more often. Spend a few more hours if you are a hooks beginner, and you will find yourself in weird pitfalls that you would not have noticed on your first day with React.

Why Memoize Hooks

A memoize hook remembers.

That is the simplest way to think about these hooks. The actual tricky questions are:

  1. Why do they need to remember?
  2. What do they remember?
  3. When do they remember?

I am going to attempt to teach you memoize hooks by trying as much as I can to answer these questions.

Read more
React Router v5

Today, we are excited to announce the release of React Router version 5. You can get it using:

$ npm install react-router
# or
$ npm install react-router-dom
# or
$ npm install react-router-native


  • React Router version 5 is now available
  • v5 is fully backwards compatible with 4.x
    • The only reason for the major version bump has to do with how we were specifying dependencies in react-router-dom
  • v5 introduces several structural improvements, including:
    • Better support for React 16
    • Eliminates all warnings in <StrictMode>
    • New context API (internal only)
    • Fully automated releases
  • v5 also introduces a few new features

Read more
Publish a react component as npm module

There are a lot of guides out there that advise you to use webpack to wrap up your components before publishing them to npm. This is absolutely not necessary. I would even consider it bad practice. Its much easier without webpack, too.

Lets say we have created a component, or even better - a collection of components that we want to re-use in other projects. In this case, we would move the components into a separate project and publish that project on npm. Lets do that.

Read more
React video courses
Because I need to pay my bills 😉
Copyright © 2019 ABL - The Problem Solver, All rights reserved.

unsubscribe from this list    update subscription preferences 

Email Marketing Powered by Mailchimp