08 2017 档案
摘要:对于一个应用来说,获取数据的方法可以有很多,比如:Ajax, Websockets, LocalStorage, Indexdb, Service Workers,但是如何整合多种数据源、如何避免BUG、如何提高可维护性、如何提升应用的速度,这些却又是需要解决的问题。MVC是经典的Web应用开发模式
阅读全文
摘要: 一、HTTP a)Angular提供了自己的HTTP库来调用外部API,为了能够在等待API响应的过程中继续与界面交互,采用异步HTTP请求的方式。 b)Get请求,首先导入Http, Response,http.request方法返回Observable类型,所以可以使用Observable.
阅读全文
摘要:一、依赖注入 a) 如果模块A需要依赖模块B,通常的做法是在A中导入B,import{B} from ‘B’,但有一些场合需要解除这种直接依赖,比如单元测试时需要mock一个B对象、还有时要创建B的单例或者用工厂模式生成B,这时适合使用依赖注入(Dependency Injection)的方式来解除
阅读全文
摘要: Angular提供了一些内建的指令,可以作为属性添加给HTML元素,以动态控制其行为。 一、内建指令 a) *ngIf,可以根据条件来显示或隐藏HTML元素。 <div *ngIf='a>b'>show</div>,只有在a>b的时候才会显示这个div。 b)*ngSwitchCase,可以根据
阅读全文
摘要:应用(Application)是由组件构成的树。树的根部是最顶层的组件即应用本身,启动的时候,浏览器会最先渲染顶层组件,然后根据树形结构,迭代渲染子组件。组件是可装配的,可以互相组合以构成更大的组件。本篇作者介绍了创建一个Angular应用的思路和过程。 一、介绍 要编写Angular应用是一个产品
阅读全文
摘要:一、模仿Reddit a) 运行ng new –ng4angular-reddit创建应用,从随书代码中复制样式文件,新建组件app-root,代码为: 界面可以看到了: b) 对于界面输入的数据,获取的方式有点特别,使用了#newlink这样的语法,newlink是一个对象,现在代表就是所在的in
阅读全文
摘要: 一、简单操作 a) 使用Angular CLI可以快速创建项目框架,先运行 $ npm install –g @angular/cli@1.0.0安装CLI,为CLI的位置设置环境变量,然后就可以全局使用ng命令了。 执行ng new –ng4 angular-hello-world可以创建An
阅读全文
摘要:Angular2是一款开源JavaScript库,由Google维护,用来创建页面应用程序。正式发布于2016年9月,基于ES6开发。 一、准备工作 使用Angular2开发,需要预先做一些配置上的配置,如NPM、Node.Js、Git等,还要对TypeScript有个大概的了解。 a)NPM是随同
阅读全文
摘要:一、Action方法的返回类型 a) 操作方法的返回类型有四种:void、简单或复杂类型、HttpResponseMessage类型、IHttpActionResult类型。 b) 如果返回类型为void,请求结束后HTTP状态码为204(No Content),如果返回类型为复杂类型,则对象会被转
阅读全文
摘要: 一、测试Web API a)测试Web API可以用来检测请求和返回数据是否正常,可以使用Fiddler、Postman等工具。以Fiddler为例,这是一个http协议调试代理工具,它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web
阅读全文
摘要: 在上一篇“《ASP.NET MVC企业级实战》(二)MVC开发前奏”中跟随作者大概了解了一些C#3.0和3.5中的新特性。本篇继续以这样的方式来学习C#中的一些特性。 一、C#3.0/3.5新特性(续) a)Lambda表达式 Lambda表达式的本质就是匿名函数,基于数学中的λ演算而得名,直接
阅读全文
摘要: 在上一篇“《ASP.NET MVC企业级实战》(一)MVC开发前奏”中记录了作者介绍的一些比较实用的VS使用方法以及C#2.0中添加的新特性。本篇继续大概了解之后版本的一些新特性。 一、C#3.0/3.5新特性 a)自动属性 属性的目的是为了封装字段和控制对字段的读写权限,使用自动属性可以用类似
阅读全文