💡 Angular Direktiven – Magie mit Struktur und Verhalten
(Strukturdirektiven, Attributdirektiven & die Kunst des DOM-Manipulierens)
Direktiven sind in Angular viel mehr als nur *ngIf
und *ngFor
.
Sie sind die unsichtbare Superpower, mit der du Verhalten, Design und Struktur kontrollierst.
1️⃣ Arten von Direktiven
Typ | Beschreibung |
---|---|
Komponenten | Direktiven mit Template |
Attribut-Direktive | Verändert Aussehen/Verhalten eines DOM-Elements |
Struktur-Direktive | Fügt Elemente zum DOM hinzu oder entfernt sie dynamisch |
2️⃣ Attribut-Direktive selbst schreiben
@Directive({
selector: '[appHighlight]'
})
export class HighlightDirective {
constructor(private el: ElementRef) {
el.nativeElement.style.backgroundColor = 'yellow';
}
}
Verwendung im Template:
<p appHighlight>Ich bin gehighlightet!</p>
3️⃣ Struktur-Direktive mit TemplateRef
@Directive({
selector: '[appUnless]'
})
export class UnlessDirective {
constructor(
private templateRef: TemplateRef<any>,
private viewContainer: ViewContainerRef
) {}
@Input() set appUnless(condition: boolean) {
if (!condition) {
this.viewContainer.createEmbeddedView(this.templateRef);
} else {
this.viewContainer.clear();
}
}
}
Verwendung:
<p *appUnless="isLoggedIn">Bitte einloggen!</p>
4️⃣ Built-In Direktiven verstehen
*ngIf
,*ngFor
,ngClass
,ngStyle
,ngSwitch
- viele davon sind syntactic sugar für Strukturlogik
- unter der Haube: TemplateRef + ViewContainerRef
5️⃣ Best Practices
✅ Namen wie appCustomFeature
für Klarheit
✅ Logik auslagern, keine schweren Operationen in Direktiven
✅ Nur verwenden, wenn wirklich sinnvoll – sonst lieber Komponenten
Fazit
Direktiven geben dir in Angular volle Kontrolle über das DOM.
Ob Verhalten, Styling oder Sichtbarkeit – du entscheidest, wann und wie.
📚 Nächster Beitrag:
🧰 Angular Pipes – Saubere Darstellung statt Logik im Template
Hast du Fragen oder ein Projekt im Kopf?
Ich freue mich auf deine Nachricht. Lass uns gemeinsam deine Vision verwirklichen!
Jetzt Kontakt aufnehmen