Angular 1.5:指令与组件?

Mar*_*tin 29 angularjs angular-directive

我发现很难理解组件和指令之间的真正区别.我现在明白组件是一个更容易的概念.

因此,考虑到这一点,是否有任何理由在使用angular 1.5时继续使用指令?

也许我在这里错过了真实的上下文,但看起来组件提供了一个更简单的api.

那么我有什么理由继续使用指令呢?

Angular 2声明一切都是一个组件,所以努力从1.5迁移到2,那么只使用未来的组件是没有意义的吗?

在过去,我使用指令来创建,例如,自动查找文本框,没有理由我现在不应该在组件内执行此操作吗?然后我可以在我创建的其他组件中重用这个组件?

bre*_*per 34

只是复制角度文档,因为他们以我认为最好的方式.

了解组件

在Angular中,Component是一种特殊的指令,它使用更简单的配置,适用于基于组件的应用程序结构.

这使得以类似于使用Web组件或使用Angular 2的应用程序架构风格的方式编写应用程序变得更加容易.

组件的优点:

  • 比plain指令更简单的配置
  • 促进理智的默认和最佳做法
  • 针对基于组件的架构进行了优化
  • 编写组件指令将使其更容易升级到Angular 2

何时不使用组件:

  • 对于依赖于DOM操作,添加事件侦听器等的指令,因为编译和链接函数不可用
  • 当你需要高级指令定义选项,如优先级,终端,多元素
  • 当你想要一个由属性或CSS类而不是元素触发的指令时

更多阅读:https://docs.angularjs.org/guide/component