Angular JS:你什么时候应该使用属性而不是元素?

时间:2016-08-26 10:59:17

标签: angularjs

作为一个angularjs开发人员,我想知道何时应该使用属性与元素

根据我的理解和开发知识在创建控制模板的组件时使用元素。在使用新功能装饰现有元素时使用属性。

但我不确定......请建议

2 个答案:

答案 0 :(得分:1)

Angular directive documentation

Original answer by ckruszynsky:

  

角度指导说你应该使用"元素"   只要指令完全控制它的模板,就会受到限制   意思是它有一个模板,它正在渲染等等。

     

对于属性,他们建议仅在添加时使用这些属性   "行为"现有元素或装饰现有元素。

     

例如,考虑ng-click指令,这是一个属性   不作为元素,因为click指令只是添加了点击   对一些元素的行为。

     

另一个例子是ng-repeat指令,它也用作   属性不作为元素,因为它将重复   正在使用它的元素。

     

现在,这个指导来自角度文件;但是,我不是   必须知道元素与属性会给你一个   "更好"接近它更像是一种惯例。

     

现在,如果您必须支持旧浏览器,那么您可能需要   考虑使用注释或类指令。

     

我个人的偏好是只使用属性限制;   主要是因为刚开始角色的人起初不知所措   当他们看到限制及其可能的选项变化时   使用。

答案 1 :(得分:0)

这个问题非常基于意见,个人我只使用属性,但我可能不会跟随

但是我可以根据HTML的设计方式解决一些问题:

  • 元素适合组件(如输入,表格)。
  • 属性适合影响组件行为的选项(例如type =" text")。但是它们也可以用作组件,只要你不在同一个元素中使用它们中的两个。