Директивы в Angular: чем они полезны? Разве они не могут быть просто заменены на (событие)? - PullRequest
1 голос
/ 27 марта 2019

Я новичок в Angular2 и читаю различия между элементами, компонентами, директивами и т. Д., И я не понимаю, почему существует @Directive.

Я уже прочитал документацию (это не такнеобходимо связать это, спасибо, я уже проверил это), и я видел, что @Component является частным случаем директивы.Кроме того, существуют различные виды директив (Структурные, Атрибуты и уже упомянутые Компоненты).Однако в конце дня я смотрю на некоторые примеры @Directive и обнаруживаю, что они могут быть заменены (событием) в соответствующем @ Component.

Пример: основной пример @Directiveна этой странице @ Директива v / s @Component in Angular может быть заменено чем-то похожим на

<contact-card [name]="'foo'" [city]="'bar'" (onClick)="someAction()"></contact-card>

Возможно, я не правильно понял, и заменить его невозможно, но если это так, есть ли веская причина или полезные примеры, где использование @Directive действительно необходимо или проще, чем настройка @Component?

Заранее спасибо!

1 Ответ

1 голос
/ 27 марта 2019

Директивы добавляют поведение к существующему элементу DOM или существующему экземпляру компонента.

Компонент, вместо добавления / изменения поведения, фактически создает свое собственное представление (иерархию элементов DOM) с прикрепленным поведением.

См. Следующую документацию:

Директива

Компонентный

...