useReducer Counter - React Typing CST Test
Loading…
useReducer Counter — React Code
Manages counter state using useReducer hook for more complex logic.
import React, { useReducer } from 'react';
const reducer = (state, action) => {
switch(action.type) {
case 'INCREMENT': return { count: state.count + 1 };
case 'DECREMENT': return { count: state.count - 1 };
case 'RESET': return { count: 0 };
default: return state;
}
};
const ReducerCounter = () => {
const [state, dispatch] = useReducer(reducer, { count: 0 });
return (
<div>
<h2>Count: {state.count}</h2>
<button onClick={() => dispatch({type: 'INCREMENT'})}>+</button>
<button onClick={() => dispatch({type: 'DECREMENT'})}>-</button>
<button onClick={() => dispatch({type: 'RESET'})}>Reset</button>
</div>
);
};
export default ReducerCounter;React Language Guide
React is a declarative, component-based JavaScript library for building user interfaces, primarily for single-page applications. It allows developers to create reusable UI components and manage application state efficiently.
Primary Use Cases
- ▸Single-page web applications (SPAs)
- ▸Dynamic user interfaces for web apps
- ▸Mobile apps via React Native
- ▸Reusable component libraries
- ▸Interactive dashboards and admin panels
Notable Features
- ▸Component-based architecture
- ▸Virtual DOM for optimized rendering
- ▸JSX syntax for combining HTML and JS
- ▸One-way data binding (props)
- ▸Hooks for state and lifecycle management
Origin & Creator
Developed by Jordan Walke at Facebook in 2013.
Industrial Note
React is specialized for building dynamic, responsive web and mobile UIs, particularly in SPA and complex front-end applications.