Conversor de HTML a JSX

Conversor de HTML a JSX: gratis y en tu navegador | We.Inc

Pega HTML y obtén JSX válido: class a className, for a htmlFor, cadenas de estilo a objetos, etiquetas vacías cerradas, comentarios, eventos y un componente envolvente. No se sube nada.

Conversor de HTML a JSX

Pega HTML a la izquierda y este conversor escribe JSX a la derecha mientras escribes: class pasa a ser className, for pasa a ser htmlFor, los estilos en línea se convierten en objetos camelCase, las etiquetas vacías como img e input se cierran solas, los comentarios pasan a ir entre llaves y varios elementos de nivel superior se envuelven en un fragment. La conversión se ejecuta solo en tu navegador.

Qué cambia entre HTML y JSX

Copiar un fragmento de una plantilla, un editor de emails o un set de iconos en un componente de React suele fallar por una docena de pequeñas diferencias. Esta herramienta aplica las reglas que React documenta para JSX, explica cada cambio que hace y puede envolver el resultado en un componente con nombre listo para pegar.

Preguntas frecuentes

¿Por qué React usa className en lugar de class?

JSX se compila a JavaScript, donde class es una palabra reservada. Por eso React usa el nombre className para la prop. El mismo razonamiento convierte el atributo for de label en htmlFor.

¿Cambian los atributos data- y aria- en JSX?

No. La documentación de React indica que, por razones históricas, los atributos aria-* y data-* se escriben exactamente como en HTML, con guiones. La mayoría de los demás atributos de varias palabras pasan a camelCase.

¿Cómo escribo estilos en línea en JSX?

Pasa un objeto a style con nombres de propiedad en camelCase, por ejemplo style={{ fontWeight: 'bold', marginTop: 8 }}. React añade px a los números simples en la mayoría de propiedades. Las llaves exteriores abren una expresión de JavaScript y las interiores son el objeto.

¿Por qué me sale un error sobre varios elementos raíz?

Un componente solo puede devolver un elemento. Envuelve los hermanos en un elemento padre o en un fragment vacío, escrito <> y </>. El conversor lo hace por ti cuando el HTML tiene más de un nodo de nivel superior.

¿Se envía mi HTML a algún sitio?

No. La conversión es JavaScript puro que se ejecuta en esta página. Nada de lo que pegas se sube ni se guarda.

Las tres reglas detrás de cada conversión

Lo que todavía necesita una persona

Atributos que renombra el conversor

Atributo HTML a prop JSX

Conversor

El ejemplo de abajo se convierte en vivo; sustitúyelo por tu propio HTML.

Nombre del componente (opcional)

Copiar JSX

Cambios realizados

Solo hicieron falta los renombrados estándar.

El contenido de <{tag}> se envolvió en un template literal para que las llaves se mantengan literales.

Empieza gratis · Sin tarjeta de crédito

Relacionado: Herramientas Gratuitas

Producto

Para quién es

Funciones

Recursos

Empresa

Mapa del sitio