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. js模拟散列

    //散列 //类似于 对象存储,key-value // 存入前,先将key进行hash编码,然后存入 function HashTable(){ var hashData = []; this.dj ...

  2. Java Selenium - 元素操作 (四)

    四,弹出框 京东购物车为例 , 点击‘删除’ 或者‘移到我的关注’ ,就会弹出下面这个框框,练吧: (其实这也不是常规的弹出框,二是div css前端技术做的效果,本想做个Alert的案例,实在不好找 ...

  3. conda常用命令

    1. conda基本命令 检查Anaconda是否成功安装 conda --version 检测目前安装了哪些环境 conda info --envs 检查目前有哪些版本的python可以安装: co ...

  4. ShakaApktool 用法

    usage: ShakaApktool b[uild] [options] <app_path> -df,--default-framework 使用默认的框架资源文件. -f 跳过已编译 ...

  5. javascript 面向对象之路.2 - 小蜜蜂

    接着上篇文章继续. 要实现上篇中gif图片的效果, 我们要写js, 算法并不是很复杂, 本次也仅仅展示了实现功能的代码, 并没有从面向对象的角度去构思或重构代码. 这里, 我们定义了一些变量, 用来定 ...

  6. <1>lua编译环境 数据类型和局部变量

    1.编译环境 http://www.lua.org/download.html下载 解压后 bin目录中lua.exe运行   luac.exe编译成lua字节码 2.基本数据类型 整数,小数,布尔值 ...

  7. 详解Linux下iptables中的DNAT与SNAT设置(转)

    详解Linux下iptables中的DNAT与SNAT设置 这篇文章主要介绍了Linux下iptables中的DNAT与SNAT设置,是Linux网络配置中的基础知识,需要的朋友可以参考下   原文连 ...

  8. uva 11183 Teen Girl Squad

    题意: 有一个女孩,需要打电话让所有的人知道一个消息,消息可以被每一个知道消息的人传递. 打电话的关系是单向的,每一次电话需要一定的花费. 求出打电话最少的花费或者判断不可能让所有人知道消息. 思路: ...

  9. 转:【专题四】自定义Web浏览器

    前言: 前一个专题介绍了自定义的Web服务器,然而向Web服务器发出请求的正是本专题要介绍的Web浏览器,本专题通过简单自定义一个Web浏览器来简单介绍浏览器的工作原理,以及帮助一些初学者揭开浏览器这 ...

  10. Git HEAD detached from XXX (git HEAD 游离) 解决办法

    本文 Git 图片主要来自:图解 Git,非常感谢! 读完本文你将了解: 什么是 HEAD HEAD 游离状态的利与弊 具体解决操作 Thanks 什么是 HEAD Git 中的 HEAD 可以理解为 ...