Иногда мы хотим встроить SVG в наше приложение React.
В этой статье мы рассмотрим, как встроить SVG в приложение React.
Добавьте их напрямую с помощью JSX
Мы можем встроить SVG напрямую с помощью JSX в наше приложение React.
Например, мы можем написать:
import React from "react";
const SvgWithXlink = (props) => {
return (
<svg
width="100%"
height="100%"
xmlns="https://www.w3.org/2000/svg"
xmlnsXlink="https://www.w3.org/1999/xlink"
>
<style>{`.classA { fill:${props.fill} }`}</style>
<defs>
<g id="Port">
<circle style={{ fill: "inherit" }} r="10" />
</g>
</defs>
<text y="15">black</text>
<use x="70" y="10" xlinkHref="#Port" />
<text y="35">{props.fill}</text>
<use x="70" y="30" xlinkHref="#Port" className="classA" />
<text y="55">blue</text>
<use x="70" y="50" xlinkHref="#Port" style={{ fill: "blue" }} />
</svg>
);
};
export default function App() {
return (
<div className="App">
<SvgWithXlink fill="green" />
</div>
);
}
чтобы встроить SVG в компонент SvgWithXLink.
Мы просто помещаем элементы, необходимые для встраивания SVG в компонент.
И мы можем передавать реквизиты в элементы, как и в любые другие элементы или компоненты HTML.
У нас есть circle для добавления кругов.
А атрибут xLinkHref позволяет нам обвести id элемента g.
x и y — координаты расположения элементов.
В App мы добавляем SvgWithXLink с реквизитом fill, установленным на 'green'.
Теперь мы видим 3 круга.
Заключение
Мы можем встроить SVG напрямую с помощью JSX в наше приложение React.
Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter, LinkedIn, YouTube и Discord .
Заинтересованы в масштабировании запуска вашего программного обеспечения? Ознакомьтесь с разделом Схема.