AngularJS入门-前端撸码笔记

标签:AngularJS入门

AngularJS

AngularJS开发指南33:单元测试

蒙奇·D·撸码客 发布于 2016-06-30 17:13:50

Javascript是动态类型语言,它的表达式有强大的威力,但也因此使得编译器对它没有任何帮助。所以我们强烈的觉得它需要强大的测试框架。我们已经建好了这样一个框架,所以没有理由不用它吧。不要把问题都搅在一起单元测试,如名字一样就是单独测试每个部分的代码。单元测试视图解决的问题是:...

AngularJS

AngularJS开发指南32:理解服务

蒙奇·D·撸码客 发布于 2016-06-30 17:13:24

AngularJS服务是一种能执行一个常见操作的单例,比如$http服务是用来操作浏览器的XMLHttpRequest对象的。要使用AngularJS服务,你只需要在需要的地方(控制器,或其他服务)指出依赖就行了。AngularJS的依赖注入系统会帮你完成剩下的事情。它负责实例化...

AngularJS

AngularJS开发指南31:测试服务

蒙奇·D·撸码客 发布于 2016-06-30 17:12:57

下面是“创建AngularJS服务”一章中“依赖”例子里的“notify”服务的单元测试。测试用使用了Jasminespy替代了真实浏览器的alert。varmock,notify;beforeEach(function(){mock={alert:jasmine.createS...

AngularJS

AngularJS开发指南30:管理服务依赖

蒙奇·D·撸码客 发布于 2016-06-30 17:12:16

AngularJS允许服务声明它的实例和构造依赖的服务。要声明依赖,你可以在工场方法参数中隐式指明他们,也可以将$inject属性设置成包含了依赖名称的数组,或者是使用数组表示法。不推荐使用$inject属性的这种方法。使用数组表示法:functionmyModuleCfgFn(...

AngularJS

AngularJS开发指南29:将服务注入到控制器中

蒙奇·D·撸码客 发布于 2016-06-30 17:11:50

将服务用作控制器的依赖和将服务用作其他服务的依赖很类似。因为Javascript是一种动态语言,依赖注入系统无法通过静态类型来知道应该注入什么样的服务(静态类型语言就可以)。所以,你应该$inject的属性来指定服务的名字,这个属性是一个包含这需要注入的服务的名字字符串的数组。名...

AngularJS

AngularJS开发指南28:创建服务

蒙奇·D·撸码客 发布于 2016-06-30 17:11:27

虽然AngularJS提过了很多有用的服务,但是如果你要创建一个很棒的应用,你可能还是要写自己的服务。你可以通过在模块中注册一个服务工场函数,或者通过Modeul#factoryapi或者直接通过模块配置函数中的$provideapi来实现。所有的服务都符合依赖注入的原则。它们用...

AngularJS

AngularJS开发指南27:使用$location

蒙奇·D·撸码客 发布于 2016-06-30 17:10:59

它是干什么的?$location服务解析地址栏中的URL(基于window.location),让你在应用代码中能获取到。改变地址栏中的URL会反应$location服务中,反之亦然。$location服务:暴露当前地址栏的URL,这样你就能获取并监听URL。改变URL。当出现以...

AngularJS

AngularJS开发指南26:AngularJS服务

蒙奇·D·撸码客 发布于 2016-06-30 17:10:27

服务是一种由服务器端带到客户端的特性,它由来已久。AngularJS应用中的服务是一些用依赖注入捆绑在一起的可替换的对象。服务是最常和依赖注入一起用的,它也是AngularJS中的关键特性。...

AngularJS

AngularJS开发指南25:使用AngularJS过滤器

蒙奇·D·撸码客 发布于 2016-06-30 17:09:03

过滤器可用在任何api或者ng.$rootScoe.Scope的执行过程中,不过一般用来格式化绑定在模板中的表达式。{{expression|filter}}过滤器一般在处理过程中将数据转变成新的格式。它能使用链式风格,还能接受附加参数。你可以像下面这样使用链式风格:{{expr...

AngularJS

AngularJS开发指南24:创建AngularJS过滤器

蒙奇·D·撸码客 发布于 2016-06-30 17:07:39

写一个你自己的过滤器非常容易:在你的模块中注册一个新的过滤器(可注入的)工厂函数就行了。这个工厂函数必须放回一个新的过滤器函数,这个过滤函数的第一个参数接受的是输入。任何过滤器参数都会被当成附加的参数传递给过滤器。下面的例子展示了逆转字符串文本。另外,它有条件地将文本大写并填上颜...