Komponen React JS

Fungsi komponen seperti membalikkan elemen HTML

Komponen React JS

Komponen adalah bit kode yang bebas dan dapat digunakan kembali. Komponen menjadikan tujuan yang sama dengan fungsi JavaScript, tetapi bekerja secara terpisah dan mengembalikan HTML melalui fungsi render.

Komponen terdapat dalam dua jenis, komponen Class dan komponen Fungsi, dalam artikel ini kita akan berkonsentrasi pada komponen Class.

Membuat Komponen Class

Ketika membuat komponen React JS, nama komponen harus dimulai dengan huruf besar.

Komponen tersebut meliputi pernyataan extends React.Component, pernyataan ini menciptakan turunan untuk React.Component, dan memberikan akses komponen ke fungsi React.Component.

Komponen ini juga membutuhkan  metode render(), metode ini membalikkan HTML.

Contoh

Membuat komponen Class bernama Car

class Car extends React.Component {
  render() {
    return <h2>Hi, I am a Car!</h2>;
  }
}

Sekarang  aplikasi React Anda memiliki komponen yang disebut Car, yang mengembalikan elemen  <h2>.

Untuk menggunakan komponen ini dalam aplikasi Anda, gunakan sintaks yang sama seperti HTML biasa: <Car />

Contoh

Menampilkan komponen Car dalam elemen “akar”:

ReactDOM.render(<Car />, document.getElementById('root'));
Membuat Komponen Fungsi

Berikut adalah contoh yang sama seperti di atas, tetapi dibuat menggunakan komponen Fungsi sebagai gantinya.

Komponen Fungsi juga membalikkan HTML, dan hampir sama dengan komponen Class, tetapi komponen Kelas memiliki beberapa tambahan, dan akan lebih dipelajari dalam artikel ini.

Contoh

Membuat komponen Fungsi bernama Car

function Car() {
  return <h2>Hi, I am also a Car!</h2>;
}

Sekali lagi aplikasi React JS kamu memiliki komponen Car.

Mengacu pada komponen Car sebagai HTML normal (kecuali dalam React, komponen harus mulai dengan huruf besar):

Contoh

Menampilkan komponen Car dalam elemen “akar”:

ReactDOM.render(<Car />, document.getElementById('root'));
komponen Konstruktor

Jika ada fungsi constructor() dalam komponen kamu, fungsi ini akan dipanggil ketika komponen akan dimulai.

Fungsi constructor adalah tempat di mana kamu memulai sifat komponen.

Dalam React, properti komponen harus disimpan dalam suatu objek disebut state.

kamu akan belajar lebih banyak tentang state nanti dalam artkel ini.

Di mana fungsi constructor kamu juga menerima turunan dari komponen induk dengan memasukkan pernyataan super() , yang mengeksekusi fungsi konstruktor komponen, dan komponen kamu memiliki akses ke semua fungsi dari komponen induk ( React.Component).

Contoh

Membuat fungsi konstruktor dalam komponen Car, dan menambahkan properti warna:

class Car extends React.Component {
  constructor() {
    super();
    this.state = {color: "red"};
  }
  render() {
    return <h2>I am a Car!</h2>;
  }
}

Menggunakan properti warna dalam fungsi render ():

Contoh

class Car extends React.Component {
  constructor() {
    super();
    this.state = {color: "red"};
  }
  render() {
    return <h2>I am a {this.state.color} Car!</h2>;
  }
}
Atribut

Cara lain untuk menangani properti komponen adalah dengan menggunakan props.

Alat peraga seperti fungsi argumen, dan kamu mengirim mereka ke dalam komponen sebagai atribut.

Anda akan belajar lebih banyak tentang props dalam artikel berikutnya.

Contoh

Gunakan atribut untuk memberikan warna untuk komponen Car, dan menggunakannya dalam fungsi render ():

class Car extends React.Component {
  render() {
    return <h2>I am a {this.props.color} Car!</h2>;
  }
}
 
ReactDOM.render(<Car color="red"/>, document.getElementById('root'));
Komponen dalam komponen

Kita bisa merujuk ke komponen di dalam komponen lain:

Contoh

Menggunakan komponen Car dalam komponen Garage:

class Car extends React.Component {
  render() {
    return <h2>I am a Car!</h2>;
  }
}
 
class Garage extends React.Component {
  render() {
    return (
      <div>
      <h1>Who lives in my Garage?</h1>
      <Car />
      </div>
    );
  }
}
 
ReactDOM.render(<Garage />, document.getElementById('root'));
Komponen dalam File

React adalah tentang menggunakan ulang semua kode, dan dapat menjadi mudah untuk memasukkan beberapa komponen kmau dalam file terpisah.

Untuk melakukan itu, buat file baru dengan ekstensi file.js  dan memasukkan kode tersebut di dalamnya:

Perhatikan bahwa file harus mulai dengan memasukkan React (seperti sebelumnya), dan harus berakhir dengan pernyataan export default Car;.

Contoh

Ini adalah file baru, kita namakan “App.js”:

import React from 'react';
import ReactDOM from 'react-dom';
 
class Car extends React.Component {
  render() {
    return <h2>Hi, I am a Car!</h2>;
   
  
} 
}
 
export default Car;

Untuk dapat menggunakan komponen Car, Anda harus memasukkan  file dalam aplikasi kamu.

Contoh

Sekarang kita memasukkan file “App.js” ke dalam aplikasi, dan apakah kita dapat menggunakan komponen Car seperti itu di sini.

import React from 'react';
import ReactDOM from 'react-dom';
import Car from './App.js';
 
ReactDOM.render(<Car />, document.getElementById('root'));