Yes, React can be used without JSX. JSX is just syntactic sugar for the React.createElement()
function. All React functionality is available without JSX, although the code becomes more verbose.
Main way to use React without JSX:
React.createElement()
directlyJSX is not required to work with React. It’s just a convenient way of writing that compiles to regular React.createElement()
calls.
// With JSX
const element = <div className="container">
<h1>Hello, world!</h1>
<p>This is an example with JSX</p>
</div>;
// Without JSX (same result)
const element = React.createElement(
'div',
{ className: 'container' },
React.createElement('h1', null, 'Hello, world!'),
React.createElement('p', null, 'This is an example without JSX')
);
// With JSX
function Welcome({ name }) {
return <h1>Hello, {name}!</h1>;
}
// Without JSX
function Welcome({ name }) {
return React.createElement('h1', null, 'Hello, ', name, '!');
}
Conclusion: React is fully functional without JSX, but JSX makes code more readable and convenient to write.
Want more articles for interview preparation? Subscribe to EasyAdvice, bookmark the site, and improve yourself every day 💪