react-svg-wrapper
v0.5.6
Published
> A react component for injecting a svg file (or string) into a DOM tree.
Downloads
34
Maintainers
Readme
react-svg-wrapper
A react component for injecting a svg file (or string) into a DOM tree.
demo
Check it out here in sandbox 🔗
usage
props | description
--- | ---
src
| required, svg file or string to be passed via this prop
type
| optional, default value = file
, if svg string has to be passed, we need to use type='string'
Also, numerous vaild html, svg props can be passed to top-level too :), see example below for reference.
import React from "react";
import SVGWrapper from "react-svg-wrapper";
// import the svg you want to render
import myLogo from "../images/myLogo.svg";
const MyComp = () => {
return (
// some wrapper/parent component if needed
<someComp>
<SVGWrapper
src={svg}
className="App-logo"
style={{
backgroundColor: "red",
border: "solid 1px",
borderRadius: "10px",
}}
/>
</someComp>
);
};
export default MyComp;
motive & idea
- To make a zero-dependency and light-weight package ⚡ for injecting a svg into DOM tree.
- The problem was simple we wanted to use svg in our react apps directly and control it's behaviour based on some business logic.
- So, we thought of making a wrapper from ground-zero by using basic DFS and dom tree analysis.
in near future ...
- [ ] accepting svg's via hyperlinks
- [ ] reducing package size to 15Kb