Code Mosh React 18 Beginners Fco Better Apr 2026
npx create-react-app my-app --template typescript cd my-app 2.1. Creating a Component Create a new file called Counter.tsx in the src directory:
function App() { return ( <div className="App"> <header className="App-header"> <Counter /> <Suspense fallback={<div>Loading...</div>}> <LazyLoadedComponent /> </Suspense> </header> </div> ); } code mosh react 18 beginners fco better
const handleClick = async () => { // Before React 18, setCount would not batch with async code // Now, React 18 automatically batches updates setCount(count + 1); await fetch('https://example.com/api/data'); // State updates here will batch with the previous setCount }; { // Before React 18
export default Counter; Here's how App.tsx could look: export default Counter
export default App; To see automatic batching in action, you can modify Counter.tsx to include a function that updates state and then uses fetch to make an API call:
const LazyLoadedComponent = lazy(() => import('./LazyLoadedComponent'));
import React, { useState } from 'react';