Angularjs 学习笔记
Angularjs
表单验证:https://www.w3xue.com/jsjq/angularjs/angularjs-validation.html
https://www.cnblogs.com/zml-java/p/5644260.html
表单验证后回调:https://blog.csdn.net/dengboz0910/article/details/53082772
factory vs service vs provider:https://www.oschina.net/translate/angularjs-factory-vs-service-vs-provider
select控件:https://m.runoob.com/angularjs/angularjs-select.html
$q和promise:https://www.cnblogs.com/xing901022/p/4928147.html
自己理解:
1、什么时候需要用promise?
当服务提供方想要自己提供的服务在执行成功后/失败后/值变化以后触发服务调用方相应的回调函数时,使用之。
2、使用方法
由服务提供方在服务方法的逻辑中使用$q.deffer()创建一个deffer对象。在服务逻辑执行成功/失败/关键值改变以后分别调用deffer的resolve(value)/reject(data)/notify(data)方法,并在服务逻辑的最后使用deffer.promise()方法返回promise对象。服务调用方调用了服务方法以后直接.then(),then方法里可以传三个回调函数,这三个回调函数分别在deffer的resolve(value)/reject(data)/notify(data)方法执行后自动被调用。第二个回调函数也会在resolve执行失败以后调用。
3、补充
3.1 deffer的三个方法可以单独使用,then方法也不一定必须传三个回调函数,也可以传一个或者两个回调函数,then方法返回promise对象,所以可以连续.then()。
3.2 promise还有两个方法catch()和finally()。
3.3 deffer的所谓关键值改变notify方法其实就是方便开发人员灵活应用的一种回调场景。只要你打算在编写的服务代码的某处触发调用者的回调函数,就使用notify,当然,其实resolve和reject也是可以灵活使用。
4、deffer只是$q的一种功用。
Angularjs里的定时器和循环执行:
https://www.cnblogs.com/moli-/p/5827618.html
定时器的销毁:https://blog.csdn.net/liwusen/article/details/52138882
如何在主页面和ngdialog之间传递参数?
https://segmentfault.com/q/1010000007149580
1、必须做的步骤:ngDialog的scope:$scope
2、如何向主页面的$scope赋值:在ngDialog的controller中,使用$scope.$parent即等价于主页面中的$scope
3、如何从主页面的$scope中取值?直接使用主页面中$scope的变量即可。
参考资料:https://github.com/likeastore/ngDialog
使用$watch监听对象的改变:
http://www.zymseo.com/386.html
https://www.cnblogs.com/yg_zhang/p/4799369.html
$scope.$watch('targetObj', function(n, o){
XXXXXX
}, true);
n代表新值,o代表老值,如果被监听的是一个对象,则第三个参数必须带,且是true。
id问题:
$apply的使用:
$http在post时,参数params和data有何区别?以及其他参数的学习:
Angularjs 学习笔记的更多相关文章
- AngularJs学习笔记--Forms
原版地址:http://code.angularjs.org/1.0.2/docs/guide/forms 控件(input.select.textarea)是用户输入数据的一种方式.Form(表单) ...
- AngularJs学习笔记--expression
原版地址:http://code.angularjs.org/1.0.2/docs/guide/expression 表达式(Expressions)是类Javascript的代码片段,通常放置在绑定 ...
- AngularJs学习笔记--directive
原版地址:http://code.angularjs.org/1.0.2/docs/guide/directive Directive是教HTML玩一些新把戏的途径.在DOM编译期间,directiv ...
- AngularJs学习笔记--Guide教程系列文章索引
在很久很久以前,一位前辈向我推荐AngularJs.但当时我没有好好学习,仅仅是讲文档浏览了一次.后来觉醒了……于是下定决心好好理解这系列的文档,并意译出来(英文水平不足……不能说是翻译,有些实在是看 ...
- AngularJs学习笔记--bootstrap
AngularJs学习笔记系列第一篇,希望我可以坚持写下去.本文内容主要来自 http://docs.angularjs.org/guide/ 文档的内容,但也加入些许自己的理解与尝试结果. 一.总括 ...
- AngularJs学习笔记--html compiler
原文再续,书接上回...依旧参考http://code.angularjs.org/1.0.2/docs/guide/compiler 一.总括 Angular的HTML compiler允许开发者自 ...
- AngularJs学习笔记--concepts(概念)
原版地址:http://code.angularjs.org/1.0.2/docs/guide/concepts 继续.. 一.总括 本文主要是angular组件(components)的概览,并说明 ...
- AngularJS学习笔记2——AngularJS的初始化
本文主要介绍AngularJS的自动初始化以及在必要的适合如何手动初始化. Angular <script> Tag 下面通过一小段代码来介绍推荐的自动初始化过程: <!doctyp ...
- AngularJs学习笔记--Using $location
原版地址:http://code.angularjs.org/1.0.2/docs/guide/dev_guide.services.$location 一.What does it do? $loc ...
- AngularJs学习笔记--unit-testing
原版地址:http://docs.angularjs.org/guide/dev_guide.unit-testing javascript是一门动态类型语言,这给她带来了很强的表现能力,但同时也使编 ...
随机推荐
- 【学习笔记】python2的print和python3的print()
python2.x和3.x中的输出语句有着明显不同 2.x中的print不是个函数,输出格式如下 Python 2.7.12+ (default, Aug 4 2016, 20:04:34) [GCC ...
- python系统编程(六)
threading注意点 1. 线程执行代码的封装 通过上一小节,能够看出,通过使用threading模块能完成多任务的程序开发,为了让每个线程的封装性更完美,所以使用threading模块时,往往会 ...
- bzoj1051: [HAOI2006]受欢迎的牛(tarjan板子)
1051: [HAOI2006]受欢迎的牛 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 6064 Solved: 3179[Submit][Sta ...
- Java中Date, Calendar, SimpleDateFormat的相互转换
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
- 学习Struts--Chap01:了解Struts2
学习之前的一些话: 这是我系统学习Java知识这么久以来第一次接触web框架,很不幸的是刚开始学习它就听到很多人说这个框架现在已经过时了,很多企业现在开发项目几乎不会用这个框架了,就是有用这个框架的项 ...
- Docker 常用命令(二)
4. 查看Docker镜像创建历史: docker history flaskhello 3. Docker提交镜像 docker build -t flaskhello . docker run - ...
- Java入门学习笔记
Hello.java public class Hello { public static void main(String[] args) { System.out.println("He ...
- springmvc中select可以绑定enum中所有数据的方法
public enum States { AK("AK"), AL("AL"), AR("AR"), AZ("AZ"), ...
- Siamese网络
1. 对比损失函数(Contrastive Loss function) 孪生架构的目的不是对输入图像进行分类,而是区分它们.因此,分类损失函数(如交叉熵)不是最合适的选择,这种架构更适合 ...
- 经纬度编码方法推荐-plus code简介
今天罗孚为大家推荐一种经纬度编码的方法--plus code,原名open location code,是Google于2014年发明的,旨在将表示地理位置的经纬度通过算法推导成一个字符串. plus ...