...

/

Local vs. Global State Management

Local vs. Global State Management

Learn about local and global state management in Next.js.

Let’s take a closer look at the two different types of states that Next.js encompasses.

Local state management

When talking about local state management, we’re referring to the application state that is component-scoped. We can summarize that concept with an elementary Counter component:

Press + to interact
import React, { useState } from "react";
function Counter({ initialCount = 0 }) {
const [count, setCount] = useState(initialCount);
return (
<div>
<b>Count is: {count}</b><br />
<button onClick={() => setCount(count + 1)}>
Increment +
</button>
<button onClick={() => setCount(count - 1)}>
Decrement -
</button>
</div>
)
}
export default Counter;

When we click the “Increment” button, we’ll add 1 to the current count value. Vice-versa, we’ll subtract 1 from that value when we click the “Decrement” button; nothing special!

But while it’s easy for a parent component to pass an initialCount value as a prop for the Counter element, it can be way more challenging to do the opposite: passing the current count value to the parent component. There are many cases where we need to manage just the local state, and the React useState hook can be ...

Ask