React.js
  • Roadmap belajar React.js
  • Tahap 1: Dasar-dasar JavaScript
    • Apa itu JavaScript dan kegunaannya
    • Sejarah dan perkembangan JavaScript
    • Apa itu Node.js dan hubungannya dengan JavaScript
    • Cara instal Node.js
    • Cara menjalankan JavaScript di Node.js
    • Variabel dalam JavaScript
    • Tipe data dalam JavaScript
    • Operator dalam JavaScript
    • Truly dan Falsy dalam JavaScript
    • Kondisional dalam JavaScript
    • Looping dalam JavaScript
    • Fungsi dalam JavaScript
    • Parameter dan Return Value dalam JavaScript
    • DOM di JavaScript dan Cara manipulasinya
    • Event Handling dalam JavaScript
    • Try, catch, dan finally dalam JavaScript
    • Callback dalam JavaScript
    • Promise dalam JavaScript
    • Async dan Await dalam JavaScript
  • Tahap 2: JavaScript Lanjutan
    • OOP dalam JavaScript
    • ES6
    • LocalStorage dalam JavaScript
    • FetchAPI dalam JavaScript
  • Tahap 3: Memulai dengan React.js
    • Apa itu React?
    • Konsep Virtual DOM
    • Apa itu JSX?
    • Langkah-langkah Setup Project React.js
    • Apa itu Komponen dalam React?
    • Apa itu Props dan State dalam React?
    • Apa itu Event Handling dalam React?
    • Apa itu Component Lifecycle dalam React?
    • Apa itu Hooks dalam React?
    • Apa itu Custom Hooks dalam React?
  • Tahap 4: React Lanjutan
    • Apa itu Context API dalam React?
    • Apa itu State Management (Redux)?
    • Apa itu Routing di React?
    • Apa itu Dynamic Routing, Private Routing, dan Nested Routing?
    • Cara menulis CSS di React
    • Cara Menggunakan Bootstrap di React
    • Cara Menggunakan Tailwind CSS di React
    • Cara Fetching data dari API di React
    • Cara Menampilkan data dinamis di React
    • Error handling dalam pengambilan data
    • Cara Testing komponen di React
    • End-to-end testing dengan Cypress atau Selenium
Powered by GitBook
On this page
  1. Tahap 3: Memulai dengan React.js

Apa itu JSX?

JSX (JavaScript XML) adalah ekstensi sintaks untuk JavaScript yang digunakan dengan React untuk menggambarkan seperti apa UI seharusnya terlihat. JSX memungkinkan Anda untuk menulis kode yang mirip dengan HTML di dalam file JavaScript. Meskipun terlihat seperti HTML, JSX sebenarnya adalah sintaks yang akan dikompilasi menjadi panggilan fungsi JavaScript.

Fitur Utama JSX:

  1. Ekspresif: JSX memungkinkan Anda menulis elemen UI dengan sintaks yang mirip HTML, membuat kode lebih mudah dibaca dan dipahami.

  2. Interoperabilitas dengan JavaScript: Anda dapat menyematkan ekspresi JavaScript dalam JSX menggunakan tanda kurung kurawal {}.

  3. Bersifat Deklaratif: JSX mendeklarasikan apa yang ingin Anda tampilkan di UI, bukan bagaimana cara menampilkannya.

Perbandingan: JSX vs JavaScript Murni

Tanpa JSX

Berikut adalah contoh komponen React yang ditulis tanpa JSX:

const element = React.createElement(
  'h1',
  { className: 'greeting' },
  'Hello, world!'
);

ReactDOM.render(
  element,
  document.getElementById('root')
);

Dengan JSX

Berikut adalah contoh yang sama ditulis dengan JSX:

const element = <h1 className="greeting">Hello, world!</h1>;

ReactDOM.render(
  element,
  document.getElementById('root')
);

Contoh Lengkap dengan JSX

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JSX Example</title>
</head>
<body>
    <div id="root"></div>
    <script src="https://unpkg.com/react@17/umd/react.development.js"></script>
    <script src="https://unpkg.com/react-dom@17/umd/react-dom.development.js"></script>
    <script src="script.js"></script>
</body>
</html>

JavaScript (script.js)

const App = () => {
  const name = 'World';
  return (
    <div>
      <h1>Hello, {name}!</h1>
      <p>This is a paragraph with JSX.</p>
    </div>
  );
};

ReactDOM.render(
  <App />,
  document.getElementById('root')
);

Penjelasan Kode

  1. HTML:

    • div#root: Elemen tempat React akan merender komponen.

  2. JavaScript:

    • Tanpa JSX: Menggunakan React.createElement untuk membuat elemen React.

    • Dengan JSX: Menggunakan sintaks mirip HTML yang dikompilasi menjadi panggilan React.createElement di balik layar.

    • App Component: Komponen fungsi yang menggunakan JSX untuk mendeklarasikan UI.

    • ReactDOM.render: Merender komponen App ke dalam elemen div#root.

Sumber

JSX membuat kode React lebih mudah ditulis dan dipahami dengan memungkinkan Anda menulis elemen UI menggunakan sintaks yang mirip dengan HTML. Ini adalah fitur yang sangat berguna dan banyak digunakan dalam pengembangan aplikasi React.

PreviousKonsep Virtual DOMNextLangkah-langkah Setup Project React.js

Last updated 9 months ago

React Documentation - Introducing JSX
MDN Web Docs - JSX
W3Schools - React JSX