
React JS adalah library javascript yang menggunakan komponen untuk menyusunnya halamannya.
Sebagai contoh suatu web terdiri dari header, body, dan footer. Pada react js kita bisa membaginya dengan komponen header, komponen body, dan komponen footer.
Hal ini lebih efisien ketika terjadi kesalahan atau kita hanya ingin mengubah bagian tertentu (misal header), kita hanya fokus di komponen headernya saja.
Pada artikel ini kita akan membahas beberapa topik:
- Mengenal Components React JS
- Perbedaan Class dan Functional Components
- Import dan Export React JS
- Membuat Components React Dalam 1 File
- Membuat Components React Dalam File Terpisah
Mengenal Components React JS
Ada dua komponen yang dapat dibuat pada react, yaitu:
- Class Components , dan
- Functional Components
Contoh pembuatan class components:
class App extends Component {
render() {
return (
<div>
<h1>Hello World</h1>
</div>
);
}
}
Contoh pembuatan functional components:
function App(){
return(
<div>
<h1>Hello World</h1>
</div>
)
}
Atau kita juga bisa menuliskan fungsi di atas menggunakan Javascript ES6 seperti ini:
const Header = () => (
<div>
<h1>Hello World</h1>
</div>
)
Perbedaan Class dan Functional Components
Jika kita lihat pada kode di atas, functional components lebih ringkas struktur kodenya. Hal ini sangat efektif karena kita tidak perlu mengetik terlalu panjang.
Namun ada perbedaan yang sangat besar antara class component dan function component, yaitu:
- Functional component hanya bisa menggunakan
props
itu sebabnya function component disebut stateless component atau biasa digunakan juga sebagai UI Component (komponen yang menangani tampilan). - Sedangkan Class component dapat menggunakan
state
danprops
.
Apa itu state dan props
Keduanya akan kita pelajari di artikel berikutnya.
Import dan Export React JS
Seperti yang telah kita bahas di atas, react js disusun dari gabungan beberapa komponen.
Untuk menggunakan komponen satu dengan lainnya, kita perlu meng-export dan import terlebih dahulu.
Contoh, kita akan membuat tiga buah komponen yaitu: header
, body
, dan footer
.
- Komponen
header
memuat teks dengan tulisan ini bagian header - Komponen
body
memuat teks dengan tulisan ini bagian body - dan Komponen
footer
memuat teks dengan tulisan ini bagian footer
Membuat Components React Dalam 1 File
Pertama buat terlebih dahulu projectnya. Jika belum tau bagaimana cara membuatnya, silakan lihat terlebih dahulu artikel membuat Project Baru React JS.
Jika sudah buka file App.js
. Kita akan membuat komponen Header terlebih dahulu:
export const Header = () => {
return(
<div>
<h1>Ini Bagian Header</h1>
</div>
)
}
Pada kode di atas terdapat perintah export
kemudian diikuti penulisan komponen. Hal ini berarti kita membuat komponen dan meng-export-nya untuk digunakan oleh komponen lain.
Selanjutnya kita buat komponen Body
, masih di file App.js
, tambahkan kode berikut:
export const Body = () => {
return(
<div>
<h1>Ini Bagian Body</h1>
</div>
)
}
Kita juga dapat membuat komponen dari class
, masih di App.js
tambahkan komponen Footer
berikut:
export class Footer extends Component {
render(){
return(
<div>
<h1>Ini Bagian Footer</h1>
</div>
)
}
}
Setelah itu kita buat komponen utamanya yaitu App
. Komponen ini yang akan di render secara default. Pada komponen ini kita sisipkan komponen lain seperti Header, Body dan Footer.
export default class App extends Component {
render() {
return (
<div>
<Header />
<Body />
<Footer />
</div>
);
}
}
Export default berfungsi untuk menginformasikan bahwa main programnya ada di komponen tersebut.
Membuat Component React Dalam File Terpisah
Ketika web yang kita buat sudah mulai kompleks, export dan import menggunakan cara di atas akan sangat menyulitkan kita.
Hal ini karena kode yang terlalu banyak pada file App.js
sehingga kita akan sulit untuk debuging apabila ada kesalahan.
Untuk memudahkannya, kita akan pisahkan masing-masing komponen kedalam file yang berbeda. Sehingga nantinya apabila terdapat bug, kita hanya fokus pada file komponen yang bermasalah.
Kita buat terlebih dahulu file dari masing-masing komponen. Buat file Header.js
kemudian masukkan kode berikut:
src/Header.js
import React from 'react';
const Header = () => {
return(
<div>
<h1>Ini Bagian Header</h1>
</div>
)
}
export default Header;
Kemudian buat file Body.js
dan masukan kode berikut:
src/Body.js
import React from 'react';
const Body = () => {
return(
<div>
<h1>Ini Bagian Body</h1>
</div>
)
}
export default Body;
Buat file Footer.js
dan masukan kode berikut:
src/Footer.js
import React from 'react'
class Footer extends React.Component {
render(){
return(
<div>
<h1>Ini Bagian Footer</h1>
</div>
)
}
}
export default Footer;
Catatan: Jika kita lihat, file
Header.js
,Body.js
danFooter.js
mengandung perintahimport React from 'react'
Ini adalah perintah dasar yang harus selalu ditulis ketika membuat React JSKemudian terdapat
export default {komponen};
ini berfungsi untuk meng-export komponen
Selanjutnya pada file App.js
tuliskan kode berikut:
src/App.js
import React, { Component } from 'react';
import Header from './Header';
import Body from './Body';
import Footer from './Footer';
export default class App extends Component {
render() {
return (
<div>
<Header />
<Body />
<Footer />
</div>
);
}
}
Catatan: Kode
import {komponen} from './lokasi komponen';
digunakan untuk meng-import komponen yang sebelumnya sudah kita export
Jika sudah, save dan jalankan project react kita dengan cara:
npm start
Penutup
Demikian cara membuat class component dan functional component pada react js. Pada artikel selanjutnya akan kita bahas lebih rinci tentang state dan props.