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作为第一个单词
- 支持的链接符包括:,-和_,但通常会选择-作为连接符
隔离作用域对象中的属性命名
指令隔离作用域对象中属性命名规则同上,见下面代码:
.directive('myDirective', function() { return { restrict: 'A', scope: { myUrl: '@', // 隔离作用域对象中属性命名为小驼峰命名法 myLinkText: '@' }, template: '<a href="{{myUrl}}">{{myLinkText}}</a>' })
<div my-directive my-url="http://google.com" <!-- html文件中使用“小写字母+分割符”的命名方式--> my-link-text="Click me"> </div>
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
Angular.JS中指令的命名规则详解
命名规范 同一个AngularJS指令,在js文件和html文件中有着不同的命名规范:在js文件中使用标准的小驼峰命名法,在html文件中使用"小写字母+连接符"的命名法.如下表所示 在js文件中 在html文件中 ngApp ng-app myDirective my-directive 处理机制 AngularJS之所以选择这样的命名方式,是因为html文件不区分大小写,而js文件则对大小写敏感(myDir和mydir在js文件中是不同的指令,但html看来是同一个指令),为了避免
-
Angular.js中控制器之间的传值详解
前言 每个controller都会有自己的scope,所有的scope都是属于 $rootScope的子或者子的子... 那么问题就好解决了,通过 $rootScope.$broadcast 广播的事件每个controller都能收到事件 另外,我的经验是,尽量不要用event传数据.应该建立一个service来保存数据,并且设置相应getter/setter,具体如下: 每个controller依赖service, call service.setter(...) 统一的service.set
-
原生js中ajax访问的实例详解
原生js中ajax访问的实例详解 form表单中 登录名: 失去光标即触发事件 function createXmlHttp() { var xmlHttp; try { // Firefox, Opera 8.0+, Safari xmlHttp = new XMLHttpRequest(); } catch (e) { try {// Internet Explorer xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (
-
Node.Js中实现端口重用原理详解
本文介绍了Node.Js中实现端口重用原理详解,分享给大家,具体如下: 起源,从官方实例中看多进程共用端口 const cluster = require('cluster'); const http = require('http'); const numCPUs = require('os').cpus().length; if (cluster.isMaster) { console.log(`Master ${process.pid} is running`); for (let i =
-
js中Object.create实例用法详解
1.用Object.create()方法创建新对象,并使用现有对象提供新对象的proto. 2.提供两个参数,第一个是新创建的原型对象,第二个是为新创建的对象添加属性的对象. 实例 // father 对象 let father = { name: 'father', friend: ['abby', 'bob'] } // 生成新实例对象 child1 let child1 = Object.create(father) // 更改值类型属性 child1.name = '修改了name' c
-
JS中自定义事件与观察者模式详解
目录 一.前言 二.观察者模式优缺点 三.代码实现 四.DOM自定义事件API 一.前言 观察者模式 也称发布-订阅模式 . 模型-视图模式 .当对象间存在一对多关系时,则使用观察者模式(Observer Pattern).比如,当一个对象被修改时,则会自动通知依赖它的对象.观察者模式属于行为型模式. 观察者模式: 类似我们在微信平台订阅了公众号 , 当它有新的文章发表后,就会推送给我们所有订阅的人. 我们作为订阅者不必每次都去查看这个公众号有没有新文章发布,公众号作为发布者会在合适时间通知我们
-
前端Vue中常用rules校验规则详解
目录 1.是否合法IP地址 2.是否手机号码或者固话 3.是否固话 4.是否手机号码 5.是否身份证号码 6.是否邮箱 7.合法url 8.验证内容是否包含英文数字以及下划线 9.自动检验数值的范围 10.验证数字输入框最大数值 11.验证是否1-99之间 12.验证是否整数 13.验证是否整数,非必填 14. 验证是否是[0-1]的小数 15. 验证是否是[1-10]的小数,即不可以等于0 16.验证是否是[1-100]的小数,即不可以等于0 17.验证是否是[0-100]的小数 18.验证端
-
Angular.JS中指令ng-if、ng-show/ng-hide和ng-switch的使用教程
前言 最近在做一个项目改版,第一次在项目中真正使用Angular,和平时自己写写小demo,做做练习的感觉还是非常不同的,感觉非常的新鲜.有几个指令是经常用到的,这里由于这几个有点共性,所以一起介绍一下ng-if,ng-show/ng-hide,ng-switch 这几个指令.下面来看看详细的介绍: 共性 1.这里个指令都是Angular框架提供给我们的设置页面内容显示和隐藏的方法,使用起来非常方便,尤其是做业务逻辑. 2.都是通过一个表达式的值来实现切换显示的,只不过 ng-switch 可以
-
Angular.js实现注册系统的实例详解
前言 相信大家在做项目里经常需要登录注册,那么在用angularjs该如何实现.下面让我们通过angualr.js来实现注册系统表单验证. Angular下载地址:https://code.angularjs.org/1.5.0/angular.js 首先看一下页面效果(通过bootstrap实现的布局样式): 当我们点击提交按钮时,会根据表单验证,若通过,则没有提示语句,若不通过,则会弹出响应提示语句,当然该功能可以通过其他简单方式实现,这里只是通过实战对angular进一步深入理解. 实现方
-
Node.js中路径处理模块path详解
前言 在node.js中,提供了一个path某块,在这个模块中,提供了许多使用的,可被用来处理与转换路径的方法与属性,将path的接口按照用途归类,仔细琢磨琢磨,也就没那么费解了.下面我们就来详细介绍下关于Node.js中的路径处理模块path. 获取路径/文件名/扩展名 获取路径:path.dirname(filepath) 获取文件名:path.basename(filepath) 获取扩展名:path.extname(filepath) 获取所在路径 例子如下: var path = re
随机推荐
- C++面向对象实现五子棋小游戏
- Function.prototype.call.apply结合用法分析示例
- 微信小程序 scroll-view隐藏滚动条详解
- js性能优化 如何更快速加载你的JavaScript页面
- 进程监控实现代码[vbs+bat]
- 搭建Tomcat 8源码开发环境的步骤详解
- 对数据进行分页显示到table中的实现方法
- Java基础教程之接口的继承与抽象类
- 设计模式之构建(Builder)模式 建造房子实例分析
- iOS UITextField最大字符数和字节数的限制详解
- 一个替换目录结构的正则表达式 实现目录的增加
- mysql7.x单独安装mysql的方法
- javascript 操作select下拉列表框的一点小经验
- 一个AJAX类代码
- Java基础知识之Java语言概述
- ASP.NET技巧:请求网址并解析返回的html
- 使用 ServiceStack.Text 序列化 json的实现代码
- 使用jQuery操作HTML的table表格的实例解析
- python连接字符串的方法小结
- sql 数据库还原图文教程