Manipulasi DOM di TypeScript
Artikel ini menjelaskan manipulasi DOM di TypeScript.
Anda akan belajar cara memanipulasi elemen DOM, serta cara menambah atau menghapus elemen dari pohon DOM melalui contoh kode.
YouTube Video
Manipulasi DOM di TypeScript
Manipulasi DOM di TypeScript dilakukan dengan cara yang mirip dengan JavaScript, namun TypeScript menyediakan pemeriksaan tipe sehingga operasi menjadi lebih aman. DOM (Document Object Model) adalah model objek yang digunakan untuk memanipulasi dokumen HTML dan XML secara terprogram. Ini memungkinkan Anda untuk mengakses halaman yang ditampilkan di browser, menambah atau menghapus elemen, atau mengubah gaya.
Mari kita perkenalkan metode dasar untuk memanipulasi DOM menggunakan TypeScript.
Mendapatkan Elemen DOM
Gunakan objek document
untuk mendapatkan elemen HTML. Metode berikut ini sering digunakan:.
document.getElementById
document.getElementById
mengambil elemen dengan atribut ID yang ditentukan.`.
1// Type is HTMLElement | null
2const element = document.getElementById('myElement');
3if (element) {
4 console.log(element.innerHTML);
5}
document.getElementById
mengambil elemen dengan ID yang ditentukan dan memungkinkan Anda mengakses kontennya jika ada.`.
document.querySelector
document.querySelector
mengambil elemen pertama yang cocok dengan selektor CSS.`.
1// Type is Element | null
2const element = document.querySelector('.myClass');
3if (element) {
4 console.log(element.textContent);
5}
document.querySelector
mengambil elemen pertama yang cocok dengan selektor CSS yang ditentukan dan memungkinkan Anda mengakses kontennya jika ada.`.
document.querySelectorAll
document.querySelectorAll
mengambil semua elemen yang cocok dengan selektor CSS.`.
1// Type is NodeListOf<HTMLDivElement>
2const elements = document.querySelectorAll('div');
3elements.forEach((el) => console.log(el.innerHTML));
document.querySelectorAll
mengambil semua elemen yang cocok dengan selektor CSS yang ditentukan dan memungkinkan Anda mengakses konten mereka melalui iterasi.`.
Penegasan Tipe Elemen
Di TypeScript, menegaskan tipe elemen secara eksplisit memungkinkan Anda menggunakan metode dan properti yang lebih spesifik.
1const inputElement = document.getElementById('myInput') as HTMLInputElement;
2if (inputElement) {
3 console.log(inputElement.value); // Access the value property of the input element
4}
- Kata kunci
as
adalah operator asersi tipe di TypeScript, digunakan untuk secara eksplisit memberi tahu kompiler agar memperlakukan sebuah nilai sebagai tipe tertentu. - Di TypeScript, Anda dapat menggunakan asersi tipe untuk memperlakukan elemen yang diambil sebagai tipe tertentu dan mengakses properti atau metode khusus untuk tipe tersebut.
Memanipulasi DOM
Manipulasi DOM dilakukan melalui properti-properti elemen. Ini memungkinkan Anda mengontrol perubahan pada teks atau atribut secara fleksibel, menerapkan gaya, dan memperbarui konten yang ditampilkan.
-
Mengubah Teks pada Elemen
Anda dapat mengubah teks atau HTML dari sebuah elemen menggunakan
textContent
atauinnerHTML
.
1const element = document.getElementById('myElement');
2if (element) {
3 element.textContent = 'New Text'; // Set the text content to 'New Text'
4}
- Anda dapat menggunakan
textContent
atauinnerHTML
dari sebuah elemen untuk mengubah teks tampilannya atau konten HTML-nya.
-
Mengubah Gaya Elemen
Anda dapat mengubah gaya inline menggunakan properti
style
dari elemen.
1const element = document.getElementById('myElement');
2if (element) {
3 element.style.color = 'blue';
4 element.style.fontSize = '20px';
5}
- Kode ini mengambil elemen tertentu, mengubah warna teksnya menjadi biru, dan mengatur ukuran font menjadi 20px.
-
Mengubah Atribut Elemen
Jika Anda ingin mengubah atribut elemen, gunakan
setAttribute
.
1const link = document.querySelector('a');
2if (link) {
3 link.setAttribute('href', 'https://example.com');
4}
- Kode ini mengubah atribut
href
dari elemen tautan pertama di halaman menjadihttps://example.com
.
-
Memanipulasi Kelas Elemen
Untuk menambah atau menghapus kelas elemen, gunakan
classList
.
1const element = document.getElementById('myElement');
2if (element) {
3 element.classList.add('active');
4 element.classList.remove('inactive');
5}
- Kode ini menambahkan class
active
dan menghapus classinactive
dari elemen tertentu.
Menambah dan Menghapus Elemen DOM
Anda juga dapat menambahkan elemen baru atau menghapus elemen yang sudah ada. Hal ini memungkinkan perubahan struktur halaman secara dinamis sebagai respons terhadap aksi pengguna atau status aplikasi.
-
Membuat dan Menambah Elemen Baru
Gunakan
document.createElement
untuk membuat elemen baru dan menambahkannya ke DOM.
1const newDiv = document.createElement('div');
2newDiv.textContent = 'New Element'; // Set the text content to 'New Element'
3document.body.appendChild(newDiv); // Add the new element to the body
- Kode ini membuat elemen
<div>
baru, mengatur teksnya, dan menambahkannya ke<body>
halaman.
-
Menghapus Elemen
Untuk menghapus sebuah elemen, gunakan metode
removeChild
atauremove
.
1const parentElement = document.getElementById('parentElement');
2const childElement = document.getElementById('childElement');
3if (parentElement && childElement) {
4 parentElement.removeChild(childElement); // Remove the child element
5}
6
7// Alternatively
8const element = document.getElementById('myElement');
9if (element) {
10 element.remove(); // Remove the element itself
11}
- Kode ini menunjukkan cara menghapus elemen anak tertentu dari induknya dan cara menghapus elemen itu sendiri secara langsung.
Menambah Event
Di TypeScript, Anda dapat menambah pendengar event (event listener) ke elemen untuk melakukan aksi berdasarkan interaksi pengguna.
1const button = document.getElementById('myButton');
2if (button) {
3 button.addEventListener('click', () => {
4 console.log('Button was clicked'); // Log when the button is clicked
5 });
6}
- Kode ini menambahkan event listener yang menampilkan pesan di konsol ketika tombol diklik.
- Dengan menggunakan
addEventListener
, Anda dapat mendengarkan dan menangani berbagai event seperti klik, pergerakan mouse, dan input keyboard.
Poin Penting untuk Manipulasi DOM di TypeScript
Saat memanipulasi DOM dengan TypeScript, memperhatikan definisi tipe elemen dan pemeriksaan null
dapat membantu mencegah kesalahan dan memungkinkan Anda menulis kode yang tangguh.
-
Pemeriksaan Null
Karena sebuah elemen DOM mungkin tidak ada, disarankan melakukan pemeriksaan null sebelum memanipulasi elemen di TypeScript.
-
Penegasan Tipe Secara Eksplisit
Saat mengoperasikan elemen tertentu (misalnya,
HTMLInputElement
), biasanya digunakan penegasan (as
) untuk menentukan tipe dan menggunakan properti spesifik sepertivalue
.
Dengan mengingat hal-hal tersebut, manipulasi DOM menggunakan TypeScript memungkinkan Anda menulis kode yang lebih aman dan terprediksi dengan menggabungkan fleksibilitas JavaScript dan keamanan tipe TypeScript.
Anda dapat mengikuti artikel di atas menggunakan Visual Studio Code di saluran YouTube kami. Silakan periksa juga saluran YouTube kami.