angular 学习笔记
每天进步一点点,学习笔记
笔记来自 angular权威指南
如果想要屏蔽浏览器对表单的默认验证行为,可以在表单元素上添加 novalidate 标记。
而按钮标签则完全忽略 hr e f 属性,并不会在被点击时有同样的行为。
指令本质上就是AngularJS扩展具有自定义功能的HTML元素
的途径。例如,我们可以创建一个自定义元素,它实现了 <video> 标签的功能并且能在所有浏览
器中工作:
directive() 方法返回的对象中包含了用来定义和配置指令所需的方法和属性。
声明指令本质上是在HTML中通过元素、属性、类或注释来添加功能。
无论有多少种方式可以声明指令, 我们坚持使用属性方式, 因为它有比较好的跨浏览器兼容性:
template: '<a href="{{ myUrl }}">{{ myLinkText }}</a>'
在主HTML文档中,可以给指令添加 myUrl 和 myLinkText 两个属性,这两个参数会成为指令
内部作用域的属性:
<div my-directive
my-url="http://google.com"
my-link-text="Click me to go to Google">
</div>
当使用当前作用域中的属性动态创建URL时,应该用 ng-href 代替 href 。
AngularJS会告诉浏览器在 ng-src 对应的表达式生效之前不要加载图像:
ng-app 和 ng-controller 是特殊的指令,因为它们会修改嵌套在它们内部的指令的作用域。
$rootScope 是作用域链的起始点,任何嵌套在 ng-app 内的指令都会继承它。
ng-controller 接受一个参数 expression ,这个参数是必需的
子 $scope 只是一个JavaScript对象,其中含有从父级 $scope 中通过原型继承得到的方法和属
性,包括应用的 $rootScope 。
$scope 对象的职责是承载DOM中指令所共享的操作和模型。
操作指的是 $scope 上的标准JavaScript方法。
模型指的是 $scope 上保存的包含瞬时状态数据的JavaScript对象。持久化状态的
数据应该保存到服务中,服务的作用是处理模型的持久化。
出于技术和架构方面的原因,绝对不要直接将控制器中的 $scope 赋值为值类型
对象(字符串、布尔值或数字) 。DOM中应该始终通过点操作符 . 来访问数据。
遵守这个规则将使你远离不可预期的麻烦。
如果将模型对象的某个属性设置为字符串, 它会通过引用进行共享, 因此在子 $scope 中修改
属性也会修改父 $scope 中的这个属性。
模板的URL被限制
在与应用文档相同的域和协议下,可以通过白名单或包装成被信任的值来突破限制。
要记住,使用 ng-include 时AngularJS会自动创建一个子作用域
花括号 {{ some expression }} 内的表达式。这些表达式会
被自动注册到 $watch 服务中并更新到 $digest 循环中
指令的生命周期开始于 $compile 方法并结束于 link 方法
当指令 scope 设置为 true 时,会从父作用域继承并创建一个新的作用域对象。
angular 学习笔记的更多相关文章
- angular学习笔记(三十一)-$location(2)
之前已经介绍了$location服务的基本用法:angular学习笔记(三十一)-$location(1). 这篇是上一篇的进阶,介绍$location的配置,兼容各版本浏览器,等. *注意,这里介绍 ...
- angular学习笔记(三十一)-$location(1)
本篇介绍angular中的$location服务的基本用法,下一篇介绍它的复杂的用法. $location服务的主要作用是用于获取当前url以及改变当前的url,并且存入历史记录. 一. 获取url的 ...
- angular学习笔记(三十)-指令(10)-require和controller
本篇介绍指令的最后两个属性,require和controller 当一个指令需要和父元素指令进行通信的时候,它们就会用到这两个属性,什么意思还是要看栗子: html: <outer‐direct ...
- angular学习笔记(三十)-指令(7)-compile和link(2)
继续上一篇:angular学习笔记(三十)-指令(7)-compile和link(1) 上一篇讲了compile函数的基本概念,接下来详细讲解compile和link的执行顺序. 看一段三个指令嵌套的 ...
- angular学习笔记(三十)-指令(7)-compile和link(1)
这篇主要讲解指令中的compile,以及它和link的微妙的关系. link函数在之前已经讲过了,而compile函数,它和link函数是不能共存的,如果定义了compile属性又定义link属性,那 ...
- angular学习笔记(三十)-指令(6)-transclude()方法(又称linker()方法)-模拟ng-repeat指令
在angular学习笔记(三十)-指令(4)-transclude文章的末尾提到了,如果在指令中需要反复使用被嵌套的那一坨,需要使用transclude()方法. 在angular学习笔记(三十)-指 ...
- angular学习笔记(三十)-指令(5)-link
这篇主要介绍angular指令中的link属性: link:function(scope,iEle,iAttrs,ctrl,linker){ .... } link属性值为一个函数,这个函数有五个参数 ...
- angular学习笔记(三十)-指令(2)-restrice,replace,template
本篇主要讲解指令中的 restrict属性, replace属性, template属性 这三个属性 一. restrict: 字符串.定义指令在视图中的使用方式,一共有四种使用方式: 1. 元素: ...
- angular学习笔记(三十)-指令(1)-概述
之前在 angular学习笔记(十九)-指令修改dom 里面已经简单的提到了angular中的指令,现在来详细的介绍 '指令' 一.指令的创建: dirAppModule.directive('dir ...
随机推荐
- Python3使用Print输出带颜色字体
Phton3使用print输出带颜色的彩色字体 实现过程: 终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关. 转义序列是以ESC开头,即用\03 ...
- vue-cli脚手架npm相关文件解读(2)webpack.prod.conf.js
系列文章传送门: 1.build/webpack.base.conf.js 2.build/webpack.prod.conf.js 3.build/webpack.dev.conf.js 4.bui ...
- 推广技巧:新站要如何推广引流做到日IP10000?
一.回复高人气帖子插楼推广 1.找高人气的帖子在二楼或者二楼楼层中直接插入链接推广.虽然这种方法存活率比较低,但也算是贴吧里面最直接的有效的方法.一般我们分为三种: 1.1图中链接是一个短网址,这个是 ...
- python绘图:matplotlib和pandas的应用
在进行数据分析时,绘图是必不可少的模式探索方式.用Python进行数据分析时,matplotlib和pandas是最常用到的两个库.1.matplotlib库的应用准备工作如下:打开ipython,输 ...
- @Autowired和@Resource的区别是什么?
@Autowired 与@Resource: 1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配 ...
- c++-STL:删除子串
void deletesub(string &str,const string &sub,int n) { int m,flag=0,num=0; //num是子串出现的次数 whil ...
- 高级java高并发,高性能,分布式,高可用,负载均衡,系统架构实战
java架构师.集群.高可用.高可扩 展.高性能.高并发.性能优化.Spring boot.Redis.ActiveMQ.Nginx.Mycat.Netty.Jvm大型分布 式项目实战 视频课程包含: ...
- 短视频服务大PK,阿里云、腾讯云、又拍云、七牛云、金山云5强横向对比
继直播后,短视频又再次爆发,在这个风口,国内的各大云厂商也都相继推出了自己的一站式短视频解决方案.上周由于公司短视频功能开发的需要,对比了阿里云.腾讯云.又拍云.七牛云.金山云5家的短视频服务. 先介 ...
- Gitlab-CI持续集成之Runner配置和CI脚本
p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; f ...
- AJAX 处理xml 数据
//这个方式返回的得是 xml标准的对象,可以返回 xml字符串,前端js 使用转为xml function createXml(str){ if(document.all){//IE浏览器 va ...