Si desea usar un elemento HTML en JavaScript estándar sin usar una función como Document.createElement()
, debe usarlo así:
const App = `<h1>Hello, world</h1>`;
Pero, ¿hay alguna manera de hacer esto en JavaScript estándar, solo etiquetas HTML sin una declaración de cadena (signos como ``)? Por ejemplo:
const App = <h1>Hello, world</h1>;
No hay forma de que pueda hacer esto sin una declaración (pero aún puede hacerlo sin una declaración de cadena ). Para eso, debe usar JSX en Vanilla JS usando este paquete npm: https://www.npmjs.com/package/jsx-vanilla
Esto desbloquea más funciones, como incrustar expresiones dinámicas y valores entre el código HTML. Para un ejemplo:
let x = 4; const menu = ( <ul> <li>{x-1}</li> <li>{x}</li> <li>{x+1}</li> </ul> ); const node = document.createRange().createContextualFragment(menu);
Técnicamente, JSX no es ni cadena ni HTML.