SVG zu React JSX-Komponenten-Converter
Führung
SVG zu React JSX-Komponenten-Converter
Fügen Sie den Roh-SVG-Code ein und erhalten Sie eine saubere React-Funktionalkomponente zurück. Das Tool führt eine deterministische camelCase-Umkehrung für jedes Attribut durch, entfernt nicht-JSX-Syntax und umhüllt das Ergebnis mit einer bereitgestellten Komponente – optional typisiert, optional forwardRef-umhüllt und optional durch Eigenschaften vergrößert. Alles läuft lokal im Browser, sodass Ihre Icons und Logos nie aus Ihrem Gerät verlassen.
Nutzung
- Fügen Sie das vollständige
<svg>…</svg>Markup in das Eingabefeld ein. - Setzen Sie einen Komponentennamen (PascalCase, wie
ArrowRightIcon). - Schalten Sie TypeScript,
forwardRef, skalierbare Größe-Eigenschaften und Eigenschaftenverbreitung ein, um Ihren Projektanforderungen zu entsprechen. - Kopieren Sie den generierten JSX oder laden Sie ihn als ein
.tsx/.jsxDatei.
Funktionen
- camelCase-Eigenschaften –
stroke-widthwird zustrokeWidth,fill-rulewird zufillRuleund so weiter über die gesamte SVG-Spezifikation. - Behandlung von reservierten Wörtern –
classwird inclassName,forZuhtmlForundxlink:hrefZuxlinkHref. - Inline-Stil-Parser –
style="color: red; font-size: 12px"wird in ein JSX-Stil-Objekt mit camelCase-Schlüsseln umgewandelt. - TypeScript-Ausgabe – erzeugt
React.SVGProps<SVGSVGElement>Typen bei Aktivierung. - Modus skalierbarer Icons – ersetzt die festgelegte Breite/Höhe durch
widthundheightEigenschaften mit sinnvollen Standardwerten. - forwardRef-Umwrappung – erzeugt eine
React.forwardRefKomponente mit einemdisplayNamefür DevTools. - Eigenschaftenverbreitung – leitet beliebige Eigenschaften auf die Wurzel weiter
<svg>damit VerbraucherclassName, ARIA oder Ereignis-Handler festlegen können. - Offline-Design – das SVG verlässt nie den Browser; keine Uploads, keine Serverrunden.
Häufig gestellte Fragen
-
Warum ändert React und JSX die Namen von SVG-Attributen?
JSX wird direkt in JavaScript-Objektzugriff umgewandelt, und JavaScript-Identifikatoren können keine Bindestriche enthalten. React verwendet daher standardisierte camelCase-Attributnamen, die dem DOM IDL entsprechen – zum Beispiel,
stroke-widthwird zustrokeWidthweil das DOM es alselement.strokeWidthexponiert.class,forEine kleine Anzahl von Attributen (className,htmlFor) stoßen auf JavaScript-reservierte Wörter und werden ( -
) umbenannt, um Parserkonflikte zu vermeiden.
Was macht React.forwardRef für eine SVG-Komponente?
refStandardmäßig kann eine funktionale Komponente keineReact.forwardRefvon ihrem Eltern erhalten – React ignoriert es schweigend.<svg>exponiert das unterliegende DOM-Element an den Eltern, was notwendig ist, wenn Sie direkten Zugriff auf das gerenderte -
für Fokusverwaltung, Messungen oder Integration mit Animationsbibliotheken wie Framer Motion oder GSAP benötigen.
Warum sollten SVGs als React-Komponenten statt als eingebettete Bilder verwendet werden?
<img src="icon.svg">Die Einbettung von SVG als JSX bietet Ihnen volle Kontrolle über das DOM-Element: Sie können Stile für Striche und Farben über CSS-Variable festlegen, einzelne Pfade animieren, Farben im Laufe der Zeit wechseln und ungenutzte Icons beim Buildzeitpunkt entfernen. Ein -
verhält sich wie ein opake Raster-ähnliches Element – Sie können seine Inneneigenschaften nicht von der Hostseite stylen.
Warum werden Breite und Höhe als Eigenschaften anstatt als festgelegte Attribute behalten?
widthundheightFestgelegte Pixeldimensionen binden das Icon an eine einzelne Größe und machen es schwierig, es in eine Layout-Struktur einzubetten. Die Exposition vonviewBoxals Eigenschaften (häufig in Kombination mit dem ursprünglichen
Erweiterungen installieren
IO-Tools zu Ihrem Lieblingsbrowser hinzufügen für sofortigen Zugriff und schnellere Suche
恵 Die Anzeigetafel ist eingetroffen!
Anzeigetafel ist eine unterhaltsame Möglichkeit, Ihre Spiele zu verfolgen. Alle Daten werden in Ihrem Browser gespeichert. Weitere Funktionen folgen in Kürze!
Unverzichtbare Tools
Alle Neuheiten
AlleAktualisieren: Unser neuestes Werkzeug wurde am 30. Apr. 2026 hinzugefügt
