Directive là gì?
Directive là một class Javascript được khai báo với decorator @Directive. Chúng ta sử dụng Directive để thay đổi appearance (giao diện), behavior (hành vi: cập nhật, thêm, xóa) hoặc layout (bố cục) của DOM element. Directive giúp chúng ta mở rộng HTML.
Directive được chia làm 3 loại:
Components directives: đây chính là component trong Angular, vì component cho phép định nghĩa selector và gọi ra như một thẻ html tag (<component-name></component-name>)
Structural directives: là directive cấu trúc, dùng để vẽ HTML, hiển thị data lên giao diện HTML, và thay đổi cấu trúc DOM bằng việc thêm bớt các phần tử trong DOM. Các structural directive thường có dấu * ở trước của directive. Ví dụ *ngFor, *ngIf
Attribute directives: Directive thuộc tính là các directive được sử dụng như một thuộc tính của thẻ HTML (giống như thẻ <a> có thuộc tính href). Dùng để thay đổi giao diện, tương tác của các đối tượng hoặc thay đổi directive khác hoặc thêm các thuộc tính động cho element HTML. Ví dụ *ngStyle, *ngClass,..