什么时候应该使用组件而不是指令?
When should I use a component instead of a directive?
Angular 1.5 介绍 components:
In Angular, a Component is a special kind of directive that uses a simpler configuration which is suitable for a component-based application structure.
与指令相比,我似乎真的找不到使用它们的任何优势。据我所知,它们的功能较少(例如,不再有 compile
或 link
函数)并引入了一些稍微不同的语法。
使用它的文档,因为它是 "simpler",将有助于过渡到 Angular 2,但我们在 Angular 2 中仍然有指令,对吗?我应该将我的指令转换为 Angular 1.5 应用程序中的组件吗?
Angular 2
A Component 有视图,它是 UI 的一部分。
指令没有。
就是这么简单,如果您的元素有一个 view/template 那么它就是一个组件。
如果只是需要获取元素,更改属性,注册到事件 -> 指令。
Angular 1
在 angular1 中,组件是指令的外观。换句话说,组件(在 angular 1.5+ 中)是一个用于创建指令的工厂。使用组件是最佳实践,因为它以 "right" 方式创建指令。 Angular1 中的指令是超级可配置的,并且有很多选项导致 angular 的实施不佳和 PR 不佳 :) 因此添加该组件以帮助开发人员以正确的方式创建指令(否范围,一致的控制器等...)
Angular 1.5 介绍 components:
In Angular, a Component is a special kind of directive that uses a simpler configuration which is suitable for a component-based application structure.
与指令相比,我似乎真的找不到使用它们的任何优势。据我所知,它们的功能较少(例如,不再有 compile
或 link
函数)并引入了一些稍微不同的语法。
使用它的文档,因为它是 "simpler",将有助于过渡到 Angular 2,但我们在 Angular 2 中仍然有指令,对吗?我应该将我的指令转换为 Angular 1.5 应用程序中的组件吗?
Angular 2
A Component 有视图,它是 UI 的一部分。 指令没有。
就是这么简单,如果您的元素有一个 view/template 那么它就是一个组件。 如果只是需要获取元素,更改属性,注册到事件 -> 指令。
Angular 1
在 angular1 中,组件是指令的外观。换句话说,组件(在 angular 1.5+ 中)是一个用于创建指令的工厂。使用组件是最佳实践,因为它以 "right" 方式创建指令。 Angular1 中的指令是超级可配置的,并且有很多选项导致 angular 的实施不佳和 PR 不佳 :) 因此添加该组件以帮助开发人员以正确的方式创建指令(否范围,一致的控制器等...)