Hello, today we are going to learn how we can pass a parameter from one React screen to another.

Step 1: Installing React Router v6
If you haven’t already, install React Router v6:
npm install react-router-dom@next
Step 2: Configuring React Router
In your App.js file, set up routes using BrowserRouter and Route:
// App.js
import React from 'react';
import { BrowserRouter as Router, Route, Routes } from 'react-router-dom';
import Screen1 from './Screen1';
import Screen2 from './Screen2';
function App() {
return (
<Router>
<Routes>
<Route path="/" element={<Screen1 />} />
<Route path="/dashboard/:userId" element={<Screen2 />} />
</Routes>
</Router>
);
}
export default App;
Step 3: Navigating with ID
In your Screen 1 component (Screen1.js), use useNavigate to handle navigation:
// Screen1.js
import React from 'react';
import { useNavigate } from 'react-router-dom';
const Screen1 = () => {
const navigate = useNavigate();
const handleClick = (id) => {
navigate(`/dashboard/${id}`);
};
return (
<div>
{/* Screen 1 content */}
<button onClick={() => handleClick(123)}>Go to Dashboard with ID 123</button>
</div>
);
};
export default Screen1;
Step 4: Retrieving ID in Screen 2
In your Screen 2 component (Screen2.js), use useParams to retrieve the ID:
// Screen2.js
import React from 'react';
import { useParams } from 'react-router-dom';
const Screen2 = () => {
const { userId} = useParams();
return (
<div>
{/* Screen 2 content */}
<p>User ID: {userId}</p>
</div>
);
};
export default Screen2;
Step 5: Running the Project
Make sure your application is running:
npm start
Open your browser and visit http://localhost:3000. Clicking the button on Screen 1 should correctly redirect you to Screen 2 with the user ID displayed.
