Angular 快速入门


AngularJS 官方网址

Angular:https://www.angular.cn/

Angular官网:https://angularjs.org/

  

AngularJS 1.X 的困境

  1. 饱受诟病的性能问题。
  2. 落后当前web的发展理念(如组件开发方式)
  3. 对手机端支持不够友好

Angular 2.x 特性

16年5月正式发布。

2版本取消了JS的叫法,直接叫做 Angular

2版本不能兼容1版本的代码。

  1. 移除 controller + $scope 设计,改用组件式开发(更易上手)
  2. 性能更好(渲染更快,变化监测效率更高)
  3. 优先为移动端应用设计(angular mobile toolkit)
  4. 更加贴合未来的标准(如/ES67,WebComponent)

  

Angular2 的核心概念

  

组件

  

组件使用案例

  

组件要素

  

组件的通讯机制

  

组件全生命周期

  

组件示例

  

元数据与装饰器

  

模板

  

数据绑定

  

属性绑定-[value]  :把组件类的数据传递到组件模板中。

  

事件绑定-[keyup] :把模板产生的数据通过函数调用传递到组件类。

  

双向绑定-[(ngModel)] :实现数据双向流动。

  

组件渲染

  

组件树

  

数据流向

  

指令

  

案例

  

自定义指令

  

服务

服务是实现专一目的的逻辑单元,如日志服务。

  

依赖注入

组件一如外部构建(如服务)的一种机制。

  

  

分层注入

  

模块

  1. 框架代码以模块形式组织(文件模块)
  2. 功能单元以模块形式组织(应用模块)

文件模块

  

文件模块使用

  

应用模块

  应用模块就是对应用类零散的组件、指令、服务等按照功能进行归类包装。

  

  同模块的指令可以相互使用同模块的组件,跨模块的不可以。

  

应用模块

  

  

核心概念总览图

  

Angular 快速上手

TypeScript

  

TypeScript 是微软开发的编程语言。

  JavaScript 的超集,兼容 JavaScript。

  运行前需要预编译生成 JavaScript 代码。

  加入类型判断,编译时进行类型检查。

  文件扩展名为 .ts 。

 案例

  

  TypeScript = Type + JavaScript

类与接口

  

装饰器

一种特殊的类型的声明。

能够被附加到类、方法、访问符、属性或参数上。

  

想要了解更多,浏览TypeScript官网:https://www.typescriptlang.org

开发环境的准备

Node.js :推荐使用6.0以上版本。

webpack:打包工具,可以使用 npm install -g webpack 安装。

开发IDE开发工具(VS Code) :微软推出的免费跨平台编辑器,支持TypeScript 语法及高亮提示。

webpack 原理

  

  

Angular 快速入门的更多相关文章

  1. Angular快速入门篇

    简介 AngularJS 是一个为动态WEB应用设计的结构框架,提供给大家一种新的开发应用方式,这种方式可以让你扩展HTML的语法,以弥补在构建动态WEB应用时静态文本的不足,从而在web应用程序中使 ...

  2. Vue.js 快速入门

    什么是Vue.js vue是法语中视图的意思,Vue.js是一个轻巧.高性能.可组件化的MVVM库,同时拥有非常容易上手的API.作者是尤雨溪,写下这篇文章时vue.js版本为1.0.7 准备 我推荐 ...

  3. AngularJS 30分钟快速入门【译】

    引用自:http://www.revillweb.com/tutorials/angularjs-in-30-minutes-angularjs-tutorial/,翻译如下: 简介 我三年前开始使用 ...

  4. React 快速入门小记

    大约半个月前,我一直在思考一个问题,Angular.React 和 Vue,究竟该学什么? 听取了几位前辈的意见,也综合考虑了各方面的原因,最终选择了 React,希望我"没有选错" ...

  5. AngularJS快速入门指南20:快速参考

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  6. AngularJS快速入门指南19:示例代码

    本文给出的大部分示例都可以直接运行,通过点击运行按钮来查看结果,同时支持在线编辑代码. <div ng-app=""> <p>Name: <input ...

  7. AngularJS快速入门指南18:Application

    是时候创建一个真正的AngularJS单页面应用程序了(SPA). 一个AngularJS应用程序示例 你已经了解了足够多的内容来创建第一个AngularJS应用程序: My Note Save Cl ...

  8. AngularJS快速入门指南17:Includes

    使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...

  9. AngularJS快速入门指南16:Bootstrap

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

随机推荐

  1. HTTPS安全不?

    首先,它是什么?我的理解是一开始进行SSL握手,商量好将要使用哪些加密算法来通讯,或者加密方法后使用非对称的加密方法,交互一下随机数,加上一个pre-master-secrect的,然后服务端利用私钥 ...

  2. 笔记本(ThinkPad)怎样关闭触摸板

    随着笔记本电脑的普及,人们越来越习惯于出门使用笔记本,笔记本的便捷高效也大幅度地提升了人们的工作效率.但是如果居家使用笔记本电脑,也有其不便之处.比如在键盘上打字,很容易就会喷到触摸板,以至于光标一下 ...

  3. mac 下 IntelliJ IDEA 快捷键

    编辑器 Cmd + N // 代码生成,getter, setter Opt + Enter // 导入类或者注解

  4. Linux基础(四)网络设置

    环境: linux系统版本为:CentOS 7 虚拟机:vm12 共享本地计算机网络,达到我们linux系统上网的目的 虚拟机,添加网卡-设置 设置成,自定义vmnet8 NAT模式即可,不需要添加什 ...

  5. Oracle如何重启mmon/mmnl进程(AWR自动采集)

    环境:Oracle 11.2.0.4 RAC 现象:sysaux空间满导致无法正常生成快照,清理空间后,手工生成快照可以成功,但是观察自动生成快照依然是不成功. 之前了解到awr对应的相关后台进程是m ...

  6. Batch normalization批标准化的理解

    BN的基本思想,其提出是解决梯度消失的问题的某一方法. 在深度神经网络做非线性变换前的激活输入值(x=wu+b,u是输入),当层数越深的时候,输入值的分布就会发生偏移,梯度出现消失的情况, 一般是整体 ...

  7. Xshell连接不上虚拟机提示ssh服务器拒绝了密码,请再试一次

    1. 设置ubuntu的管理员root的密码 hughes@hughes-virtual:~$ sudo passwd (供xshell连接时使用) 2. 确保源文件和系统已更新 hughes@hug ...

  8. Delegate,Action,Func,匿名方法,匿名委托,事件

    一.委托Delegate 一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本的数据类型(或者没有参数),比如 public void HelloWorld ...

  9. QT获取窗口句柄

    winId()函数 SendMessage((HWND)(this->dlg->winId()),WM_SEND_MY_MESSAGE,0,0);

  10. C. Primes or Palindromes?

    prime numbers non greater than n is about . We can also found the amount of palindrome numbers with ...