React

What's new in React Router 6?

React Router 6 has some amazing features added with improved bundle size.

Different ways to handle state in React applications

Sometimes, it is better not to use any external state management tool unless our application is that complex. We can avoid complexities involved in state management using some of the inherent ways.

React DevTools adds a feature to trigger an error boundary, making testing easier

A new enhancement in React DevTools provides a toggle error button to test Error Boundaries.

Normalizing Redux state to ensure good performance in React apps

In complex applications, client apps have to store and manage a large amount of nested data, and if the data is not normalized, it can be incredibly time-consuming for a program to lookup nested data which could become a performance concern.

Keep the React app responsive even during large screen updates with startTransition API introduced in React 18

The newly introduced startTransition API helps to improve the user interactions by categorizing the state updates as urgent and non-urgent.

React 18 improves the existing behavior of Suspense

React 18 delays committing everything inside the Suspense boundary (the suspended component and all its siblings) until the suspended data resolves.

React 18 adds automatic batching

React 18 adds out-of-the-box performance improvements by doing more batching by default.

React 18 introduces new root API ( ReactDOM.createRoot )

React 18 adds the new root API that comes up with the new out-of-the-box improvements.

React 17 attaches events to the root DOM container instead of the document node

React 17 delegates events to the root node instead of the document node, making it easier to embed React into apps built with other technologies

React 17 introduces new JSX transform

React 17 introduces jsx-runtime and jsx-dev-runtime that enables the user to write JSX without importing React.