Angular中的指令:为什么有用?它们不能仅由(事件)代替吗?

时间:2019-03-27 11:17:53

标签: angular angular2-directives

我是Angular2的新手,正在阅读元素,组件,指令等之间的差异。我不明白为什么@Directive存在。

我已经阅读了文档(不必链接,谢谢,我已经检查过它),并且我已经看到@Component是指令的特殊情况。此外,还有不同类型的指令(结构,属性和已经提到的组件)。但是,最终,我看了@Directive的一些示例,发现它们可以被相应@Component中的(事件)替换。

示例:此页面中@Directive的主要示例 @Directive v/s @Component in Angular可以替换为类似的

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

性能我不太了解它,无法替代它,但实际上是这样,有没有什么充分的理由或有用的例子,使用@Directive比调整@Component确实必要或更简单?< / p>

谢谢!

1 个答案:

答案 0 :(得分:1)

指令将行为添加到现有DOM元素或现有组件实例中。

一个组件实际上没有创建/修改行为,而是创建了具有附加行为的自己的视图(DOM元素的层次结构)。

请参阅以下文档:

Directive

Component