React adalah sebuah libraryJavaScriptopen source yang digunakan untuk membuat user interface (UI)
yang interaktif. Library ini dibuat oleh Facebook.
Library ini sangat populer karena konsep komponen.
Konsep Komponen React
Functional Component
Functional Component adalah komponen yang dibuat murni menggunakan fungsi JavaScript. Functional Component tidak menyimpan state dan hanya digunakan untuk menampilkan UI. Komponen yang dibuat dengan Functional Component disebut dengan komponen stateless. Walaupun stateless, komponen ini tetap dapat menerima data melalui properti atau dikenal dengan props.
Class Component
Class Component adalah komponen yang dibuat dengan menggunakanClass JavaScript dan mewarisi sifat React Component.Class Component dapat menyimpan state serta memilikibeberapa metode salah satunya adalah render yang digunakan untuk menampilkan UI. Komponen yang dibuat dengan Class Component disebut stateful.
Beberapa Kelebihan Komponen React
State Management, yaitu komponen yang dibuat dapat ditampilkan berdasarkan sebuah nilai/keadaan menggunakan props atau state.
Reusable, yaitu komponen yang telah dibuat dapat digunakan kembali.
Encapsulated, yaitu seluruh data yang dibutuhkan oleh komponen berada di dalam komponen tersebut.
Fitur-Fitur Yang Ada di React
JSX
JSX adalah ekstension dari sintak JavaScript yang memungkinkan untuk menulis sintak bergaya XML guna mempermudah dalam memodifikasi DOM (Document Object Model). Dengan adanya JSX konten dinamis dapat dibuat dengan mudah.
Data Binding Searah
Data Binding adalah suatu proses yang menghubungkan
element view atau user interface dengan data.Data binding pada react sifatnya satu arah, karena kondisi berikut:
Component to View, artinya setiap perubahan yang terjadi dalamcomponent data akan terlihat dalam view.
View to Component, artinya setiap perubahan yang terjadi dalamview akan terlihat juga dalam component data.