服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - angularjs - Angular.JS中指令的命名规则详解

Angular.JS中指令的命名规则详解

2022-01-17 17:56刘小光 angularjs

这篇文章主要给大家介绍了关于Angular.JS中指令命名规则的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。

命名规范

同一个AngularJS指令,在js文件和html文件中有着不同的命名规范:在js文件中使用标准的小驼峰命名法,在html文件中使用“小写字母+连接符”的命名法。如下表所示

 

在js文件中 在html文件中
ngApp ng-app
myDirective my-directive

 

处理机制

AngularJS之所以选择这样的命名方式,是因为html文件不区分大小写,而js文件则对大小写敏感(myDir和mydir在js文件中是不同的指令,但html看来是同一个指令),为了避免可能出现的错误,所以使用上述命名规范。

AngularJS执行过程中,对“小写字母+连接符”形式的命名做如下处理,最终装换成小驼峰命名法:

  • 去掉开始部分的x-和data-;
  • 第一个单词不变,把连接符后面的单词首字母转换成大写,去掉连接符。

这里有两点需要注意:

  • 指令命名时不要以x或data作为第一个单词
  • 支持的链接符包括:,-和_,但通常会选择-作为连接符

隔离作用域对象中的属性命名

指令隔离作用域对象中属性命名规则同上,见下面代码:

?
1
2
3
4
5
6
7
8
9
.directive('myDirective', function() {
 return {
 restrict: 'A',
 scope: {
  myUrl: '@', // 隔离作用域对象中属性命名为小驼峰命名法
  myLinkText: '@'
 },
 template: '<a href="{{myUrl}}">{{myLinkText}}</a>'
})
?
1
2
3
4
<div my-directive
  my-url="http://google.com" <!-- html文件中使用“小写字母+分割符”的命名方式-->
  my-link-text="Click me">
</div>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://xiaogliu.github.io/2017/04/15/AngularJS命名规则/

延伸 · 阅读

精彩推荐
  • angularjsAngular.JS中指令的命名规则详解

    Angular.JS中指令的命名规则详解

    这篇文章主要给大家介绍了关于Angular.JS中指令命名规则的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看...

    刘小光10402022-01-17
  • angularjsangularJS提交表单(form)

    angularJS提交表单(form)

    这篇文章主要介绍了angularJS提交表单(form)的方法和示例,需要的朋友可以参考下...

    angularJS教程网3972022-01-03
  • angularjsAngular框架详解之视图抽象定义

    Angular框架详解之视图抽象定义

    这篇文章主要给大家介绍了关于Angular框架详解之视图抽象定义的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习...

    被删6782022-02-24
  • angularjsangularjs实现与服务器交互分享

    angularjs实现与服务器交互分享

    AngularJS是Google开发的纯客户端JavaScript技术的WEB框架,用于扩展、增强HTML功能,它专为构建强大的WEB应用而设计。...

    angularjs教程网7312022-01-03
  • angularjsAngularJS 中括号的作用详解

    AngularJS 中括号的作用详解

    这篇文章主要介绍了AngularJS 中括号的作用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...

    Java Pro8652022-02-22
  • angularjs教你用AngularJS框架一行JS代码实现控件验证效果

    教你用AngularJS框架一行JS代码实现控件验证效果

    简单来说Angular.js是google开发者设计和开发的一套前端开发框架,帮助你简化前端开发的负担。到底能简化到什么程度呢,今天我们来看下,一行代码实现控...

    AngularJS教程网8012022-01-03
  • angularjsangularJS 中input示例分享

    angularJS 中input示例分享

    这篇文章主要介绍了angularJS 中input示例分享,需要的朋友可以参考下...

    angularJS教程网5652022-01-03
  • angularjsangularJS中router的使用指南

    angularJS中router的使用指南

    这篇文章主要介绍了angularJS中router的使用方法和示例分享,需要的朋友可以参考下...

    angularJS教程网8372022-01-03