AngularJS指令匹配

时间:2015-01-26 07:29:32

标签: javascript angularjs

假设我们有这个JS代码:

.directive('myCustomer', function() {
 return {
    template: 'Name: {{customer.name}} Address: {{customer.address}}'
  };
});

和html代码:

<div my-customer></div>

有人可以告诉我为什么我们使用div将指令与my-customer匹配,而我们在代码中的任何位置都没有此名称?

上面的代码来自Developer Guide / Directives

1 个答案:

答案 0 :(得分:3)

Angular规范化元素的标记和属性名称,以确定哪些元素与哪些指令匹配。我们通常通过其区分大小写的camelCase规范化名称(例如ngModel)来引用指令。但是,由于HTML不区分大小写,我们通过小写形式引用DOM中的指令,通常使用DOM元素上的划线分隔属性(例如ng-model)。

https://docs.angularjs.org/guide/directive#normalized