@Directive et @Component dans Angular : quelle est la différence et quand utiliser quoi ?
Bonjour à tous ! J'ai commencé à étudier Angular et TypeScript, et en créant mes premiers components et directives, je me suis perdu dans la différence entre les décorateurs `@Component` et `@Directive`. Dans la documentation, il est écrit que `@Component` est une sous-classe de `@Directive`, mais en pratique, ils sont utilisés différemment.
Par exemple, je crée un simple bouton qui change de couleur au survol. Je peux le faire à la fois avec un component et avec une directive. Voici mon code :
**Variante avec @Component :**
```typescript
import { Component } from '@angular/core';
@Component({
selector: 'app-hover-button',
template: ``,
styles: [`
.highlight { background-color: yellow; }
`]
})
export class HoverButtonComponent {
onHover() { /* ajouter une classe */ }
onLeave() { /* retirer une classe */ }
}
```
**Variante avec @Directive :**
```typescript
import { Directive, HostListener, HostBinding } from '@angular/core';
@Directive({
selector: '[appHover
No answers yet.
Connectez-vous pour laisser une réponse
Blogs
Journalisation dans les applications Kotlin : meilleures pratiques et outils