Home > Web Front-end > JS Tutorial > A Quick Intro to React.js

A Quick Intro to React.js

Barbara Streisand
Release: 2025-01-18 16:30:09
Original
552 people have browsed it

A Quick Intro to React.js

React empowers the creation of dynamic websites rendered entirely within the browser. Its core element is JSX, a syntax resembling HTML and XML.

Language Full Form Use Tags
HTML Hyper Text Markup Language Website Development Predefined tags (e.g., H1, H2, P)
XML Extensible Markup Language Data Structuring Customizable Tags
JSX JavaScript XML Combines HTML and JavaScript HTML & Custom Tags

Illustrative Examples

HTML

<code class="language-html"><div>
  <h1>This is heading 1</h1>
  <p>This is an example paragraph in HTML</p>
</div></code>
Copy after login

XML

<code class="language-xml"><example><title>XML Example
  <note>This is a note</note><data1>Example Data</data1><data2>Example Data</data2></title></example></code>
Copy after login

JSX

<code class="language-javascript">function ExampleReactComponent() {
  return (
    <div>
      <h1>This is heading 1</h1>
      <p>This is an example paragraph in JSX</p>
    </div>
  );
}</code>
Copy after login

The similarity between HTML, XML, and JSX is evident. JSX uniquely integrates HTML within JavaScript, hence its name: JavaScript XML.

This fusion of HTML and JavaScript enables dynamic HTML manipulation. For instance, a button click could toggle a class name.

React Components

React facilitates the definition of custom components that return JSX. Essentially, a React component is a JavaScript function generating JSX.

Upon rendering a root React component, JSX is automatically converted into HTML and integrated into the webpage. React allows creating custom components (akin to custom tags) for inclusion within other components.

Here's a component utilizing the ExampleReactComponent:

<code class="language-javascript">function RootReactComponent() {
  return (
    <div>
      <h1>This is the main Component</h1>
      <ExampleReactComponent />
    </div>
  );
}</code>
Copy after login

Props

Similar to HTML attributes, React components employ props.

<code class="language-javascript">function PropsExample(props) {
  console.log(props); // Prints { exampleValue: "example-value" }
  return (
    <div>
      <h1>Props Example</h1>
      {props.exampleValue}
    </div>
  );
}

function MainComponent() {
  return (
    <div>
      <h1>This is the Main Component</h1>
      <PropsExample exampleValue={"example-value"} />
    </div>
  );
}</code>
Copy after login

Rendering MainComponent invokes PropsExample with { exampleValue: "example-value" } as the props argument. Note that JavaScript variables are embedded within JSX using {}.

State

Data is typically stored in variables for display. React utilizes "state" for data management, acting as a getter/setter mechanism. When state is modified, React automatically updates the component's HTML.

This example demonstrates automatic HTML updates upon state changes:

<code class="language-javascript">import { useState } from 'react';

function IncrementDecrement() {
  const [value, setValue] = useState(0); // Initial value: 0

  function increment(e) {
    setValue(value + 1);
  }

  function decrement(e) {
    setValue(value - 1);
  }

  return (
    <div>
      <button onClick={increment}>Increment</button>
      <button onClick={decrement}>Decrement</button>
      {value}
    </div>
  );
}</code>
Copy after login

Building React Apps with Vite

Tools like Vite streamline the bundling of React components and JSX into browser-executable JavaScript.

To initiate a React project:

<code class="language-bash">npm create vite@latest my-react-app -- --template react
cd my-react-app
npm install
npm run dev</code>
Copy after login

Conclusion

This introduction to React.js provides a foundational understanding. After setting up a Vite project, experiment with creating React components to deepen your comprehension. Further learning resources are available at https://www.php.cn/link/27a5eaafdb88c45dd61732d6a6493421.

The above is the detailed content of A Quick Intro to React.js. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template