원문

Breaking Up with SVG-in-JS in 2023

번역

SVG-in-HTML로 돌아갈 때입니다.

SVG가 JS에 포함되는 경우

<svg viewBox="0 0 300 300">
  <g>
    <path d="M0 200 v-200 h200 a100,100 90 0,1 0,200 a100,100 90 0,1 -200,0z" />
  </g>
</svg>

//...

// App.jsx
import HeartIcon from "./HeartIcon.svg";
const App = () => <HeartIcon fill="red" />;

JSX의 일부로 사용이 될 때

svgr 같은 로더를 사용하기도 함

SVG-in-JS가 안티 패턴인 이유