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 ...
随机推荐
- 通过 PHP 连接China Azure Blob 存储
问题说明 Azure Blob 存储是一种将非结构化数据作为对象/Blob存储在云中的服务.Blob存储可以存储任何类型的文本或二进制数据,例如文档.媒体文件或应用程序安装程序.Blob存储也称为对象 ...
- mysql用户权限管理
参考文章:http://www.cnblogs.com/jackruicao/p/6068821.html?utm_source=itdadao&utm_medium=referral (1) ...
- MySql-python的API手记
--------------------python控制mysql的API--------------------#import MySQLdb:引用对应的开发包#conn=MySQLdb.conne ...
- bootstrap 基础(一)
1 bootstrap简介 bootstrap是Twitter公司的两名前端设计师设计的. bootstrap是一款基于HTML.CSS和JavaScript的一个前端框架. bootstrap的特点 ...
- 南昌招聘.net开发大牛
职位诱惑: 12年名企5险1金齐全+WEB&移动研发=丰厚回报 职位描述: 聘精通web开发成员共同成就事业! 中国领先的WEB内核 研发机构.华中地区唯一自主CMS研发厂商.江西最大的网站服 ...
- [置顶]
Chat Room:基于JAVA Socket的聊天室设计
d0304 更新功能实现 d0312 更新部分图片&UI设计部分 d0318 更新功能实现 d1222 实现添加好友功能.实现注册功能.修改大量BUG github:https://githu ...
- BGP基础【第三部】
静态路由的优点:安全稳定.缺点:配置繁琐不灵活.动态路由的优缺点则反之. BGP边界网关路由协议 路径向量(rip是距离矢量) 到达目的网段所要经过的所有as BGP选路不看度量值而参考13种路径属性 ...
- 第一次作业-----四则运算题目生成(基于java)
1.题目要求 1.除了整数以外,还要支持真分数的四则运算,真分数的运算,例如:1/6 + 1/8 = 7/24. 2.运算符为 +, −, ×, ÷. 3.并且要求能处理用户的输入,并判断对错,打分统 ...
- 201521123026 《java程序设计》第七周学习总结
1. 本章学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 2. 书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: public ...
- 201521123005 《java程序设计》 第六周学习总结
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰,内容覆盖 ...