我想创建一个函数,并让它返回一个HTML,就像在react中一样(不使用react或jsx)
const func = () => { return ( <h1>Hello World!</h1> ); }
drkbr07n1#
不使用react或jsx如果你不想使用JSX,那么很明显你不能使用JSX。你可以返回一个 * string *:
const func = () => { return '<h1>Hello World!</h1>'; } document.querySelector('#test').innerHTML = func();
<div id="test"></div>
或者是一个元素:一个二个一个一个
zwghvu4y2#
这里有一个解决方案
function createHTML(element, props, children) { const startTag = `<${element}`; const endTag = `</${element}>`; let htmlString = startTag; for (let prop in props) { htmlString += ` ${prop}="${props[prop]}"`; } htmlString += '>'; if (children && Array.isArray(children)) { for (let i = 0; i < children.length; i++) { htmlString += children[i]; } } else if (children && typeof children === 'string') { htmlString += children; } return htmlString + endTag; }
2条答案
按热度按时间drkbr07n1#
不使用react或jsx
如果你不想使用JSX,那么很明显你不能使用JSX。你可以返回一个 * string *:
或者是一个元素:
一个二个一个一个
zwghvu4y2#
这里有一个解决方案