Select components are used for collecting user-provided information from a list of options. Material UI for React has this component available for us and it is very easy to integrate. We can use the Select Component in ReactJS using the following approach:
Creating React Application And Installing Module:
Step 1: Create a React application using the following command:
npx create-react-app foldername
Step 2: After creating your project folder i.e. foldername, move to it using the following command:
cd foldername
Step 3: After creating the ReactJS application, Install the material-ui modules using the following command:
npm install @mui/material
Project Structure: It will look like the following.
Example 1: In this example, we will create a simple application that uses the Select component to display a dropdown of numbers from which the user can select a specific number. Please update the file App.js like below.
Filename: App.js:
Javascript
import { FormControl, InputLabel, MenuItem, Select } from '@mui/material' ; import React, { useState } from 'react' ; const App = () => { const [currentValue, setCurrentValue] = useState(1000) return ( <div style={{ margin: 'auto' , display: 'block' , width: 'fit-content' }}> <h3>How to use Select Component in ReactJS?</h3> <FormControl> <InputLabel id= "demo-simple-select-label" > Select Amount: </InputLabel> <Select labelId= "demo-simple-select-label" value={currentValue} style={{ width: 400, }} onChange={(e) => { console.log( "Current Value" , e.target.value) setCurrentValue(e.target.value) }} > <MenuItem value={1000} >1000</MenuItem> <MenuItem value={2000} >2000</MenuItem> <MenuItem value={3000}>3000</MenuItem> </Select> </FormControl> </div> ); } export default App; |
Step to Run Application: Run the application using the following command from the root directory of the project:
npm start
Output: Now open your browser and go to http://localhost:3000/, you will see the following output:
Example 2: In this example, we will create a simple application that uses the Select component to display a dropdown of numbers from which the user can select multiple numbers. Please update the file App.js like below.
Filename: App.js
Javascript
import { FormControl, InputLabel, MenuItem, Select } from '@mui/material' ; import React, { useState } from 'react' ; const App = () => { const [currentValue, setCurrentValue] = useState([]) return ( <div style={{ margin: 'auto' , display: 'block' , width: 'fit-content' }}> <h3>How to use Select Component in ReactJS?</h3> <FormControl> <InputLabel id= "demo-simple-select-label" > Select Amount: </InputLabel> <Select multiple labelId= "demo-simple-select-label" value={currentValue} style={{ width: 400, }} onChange={(e) => { const { target: { value }, } = e; setCurrentValue( // On autofill we get a // stringified value. typeof value === 'string' ? value.split( ',' ) : value, ); }} > <MenuItem value={ '1000' } >1000</MenuItem> <MenuItem value={ '2000' } >2000</MenuItem> <MenuItem value={ '3000' }>3000</MenuItem> </Select> </FormControl> </div> ); } export default App; |
Steps to run the application:
npm start
Output:
Reference: https://mui.com/material-ui/react-select/#main-content