How to use SvgIcon Component in ReactJS?
We can use the SVG Icons in ReactJS using the SvgIcon Component. SvgIcons comes with built-in accessibility. Material UI for React has this component available for us, and it is very easy to integrate. We can use the SvgIcon Component in ReactJS using the following approach.
Prerequisites:
Approach:
To use SVGIcon Component in React we will install the Material UI package from NPM. We will import the SVGIcon component of Material UI to display the required SVG on the web page.
Steps to Create 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 i @material-ui/icons
Project Structure:
Project Structure
The updated dependencies list in package.json file.
"dependencies": {
"@material-ui/icons": "^4.11.3",
"@testing-library/jest-dom": "^5.17.0",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-scripts": "5.0.1",
"web-vitals": "^2.1.4"
},
Example: This example use SVGIcon component of Material UI to show the svg icons on the page.
Javascript
import React from "react" ;
import SvgIcon from "@material-ui/core/SvgIcon" ;
export default function App() {
return (
<div style={{ display: "block" , padding: 30 }}>
<h4>How to use SvgIcon Component in ReactJS?</h4>
<SvgIcon>
<path d= "M20 12l-1.41-1.41L13
16.17V4h-2v12.17l-5.58-5.59L4
12l8 8 8-8z" />
</SvgIcon>
</div>
);
}
|
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.
Last Updated :
17 Nov, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...