React JSX
React JSX
JSX, or JavaScript XML, is a syntax extension for JavaScript recommended by React for describing what the UI should look like.
JSX allows you to write HTML elements and components in a syntax similar to XML or HTML within your JavaScript code.
It is not a requirement for using React, but it's a common and convenient way to express UI components.
Here's a simple example of JSX in a React component:
import React from 'react';
const MyComponent = () => {
return (
<div>
<h1>Hello, World! </h1>
<p>This is a simple React component using JSX. </p>
</div>
);
};
export default MyComponent;
In this example, the 'return' statement contains JSX code that defines a 'div' element with an 'h1' heading and a 'p' paragraph.
A few key points about JSX:
1.JavaScript Expressions: You can embed JavaScript expressions inside curly braces '{}' within JSX. This allows you to use dynamic values or execute JavaScript code.
const name = 'John';
return (
<div>
<p>Hello, {name}!</p>
</div>
);
2.Attributes and Props: JSX allows you to use HTML-like attributes to pass data to React components. These attributes are called props (short for properties).
const MyComponent = (props) => {
return (
<div>
<h1>{props.title}</h1>
<p>{props.description}</p>
</div>
);
};
// Usage
<MyComponent title="React JSX" description="A simple example of JSX in React." />
3.Self-Closing Tags: JSX allows self-closing tags for elements without children, similar to HTML.
const MyComponent = () => {
return <img src="path/to/image.jpg" alt="An example image" />;
};