Menambahkan Class ke Elemen dengan JavaScript di Angular
Dalam pengembangan Angular, seringkali kita perlu memanipulasi tampilan elemen HTML secara dinamis. Salah satu cara untuk mencapai hal ini adalah dengan menambahkan atau menghapus class pada elemen tersebut menggunakan JavaScript. Berikut adalah beberapa cara untuk menambahkan class ke elemen di Angular:
1. Menggunakan Directive ngClass
Direktif ngClass
adalah cara yang paling umum dan mudah untuk menambahkan dan menghapus class pada elemen di Angular. Berikut contohnya:
Ini adalah sebuah paragraf.
Dalam kode di atas, isActive
adalah variabel dalam komponen Angular kita. Jika isActive
bernilai true, class active
akan ditambahkan ke elemen div
. Sebaliknya, jika isActive
bernilai false, class inactive
yang akan ditambahkan.
2. Menggunakan Referensi Elemen dan classList.add
Cara lain adalah dengan menggunakan referensi elemen dan metode classList.add
dari JavaScript. Berikut contohnya:
Ini adalah sebuah paragraf.
import { Component, ElementRef, ViewChild } from '@angular/core';
@Component({
selector: 'app-my-component',
templateUrl: './my-component.html',
styleUrls: ['./my-component.css']
})
export class MyComponent {
@ViewChild('myDiv') myDiv: ElementRef;
addClass() {
this.myDiv.nativeElement.classList.add('active');
}
}
Dalam kode ini, kita mengambil referensi ke elemen div
menggunakan @ViewChild
. Kemudian, kita menggunakan metode classList.add
untuk menambahkan class active
ke elemen tersebut.
3. Menggunakan Property Binding
Kita juga dapat menambahkan class secara dinamis menggunakan property binding. Berikut contohnya:
Ini adalah sebuah paragraf.
Dalam kode ini, isActive
adalah variabel dalam komponen Angular kita. Jika isActive
bernilai true, class active
akan ditambahkan ke elemen div
.
Kesimpulan
Ada beberapa cara untuk menambahkan class ke elemen di Angular. Pilihlah metode yang paling sesuai dengan kebutuhan dan struktur kode Anda. Penting untuk diingat bahwa manipulasi DOM secara langsung dapat memengaruhi performa aplikasi. Gunakan teknik ini secara hati-hati dan pastikan untuk menggunakan perubahan deteksi Angular dengan benar.