Angular 快速入门
Angular 快速入门
AngularJS 官方网址
Angular:https://www.angular.cn/
Angular官网:https://angularjs.org/

AngularJS 1.X 的困境
- 饱受诟病的性能问题。
- 落后当前web的发展理念(如组件开发方式)
- 对手机端支持不够友好
Angular 2.x 特性
16年5月正式发布。
2版本取消了JS的叫法,直接叫做 Angular
2版本不能兼容1版本的代码。
- 移除 controller + $scope 设计,改用组件式开发(更易上手)
- 性能更好(渲染更快,变化监测效率更高)
- 优先为移动端应用设计(angular mobile toolkit)
- 更加贴合未来的标准(如/ES67,WebComponent)

Angular2 的核心概念

组件

组件使用案例

组件要素

组件的通讯机制

组件全生命周期

组件示例

元数据与装饰器

模板

数据绑定

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

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

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

组件渲染

组件树

数据流向

指令

案例

自定义指令

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

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


分层注入

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

文件模块使用

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

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

应用模块


核心概念总览图

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 快速入门的更多相关文章
- Angular快速入门篇
简介 AngularJS 是一个为动态WEB应用设计的结构框架,提供给大家一种新的开发应用方式,这种方式可以让你扩展HTML的语法,以弥补在构建动态WEB应用时静态文本的不足,从而在web应用程序中使 ...
- Vue.js 快速入门
什么是Vue.js vue是法语中视图的意思,Vue.js是一个轻巧.高性能.可组件化的MVVM库,同时拥有非常容易上手的API.作者是尤雨溪,写下这篇文章时vue.js版本为1.0.7 准备 我推荐 ...
- AngularJS 30分钟快速入门【译】
引用自:http://www.revillweb.com/tutorials/angularjs-in-30-minutes-angularjs-tutorial/,翻译如下: 简介 我三年前开始使用 ...
- React 快速入门小记
大约半个月前,我一直在思考一个问题,Angular.React 和 Vue,究竟该学什么? 听取了几位前辈的意见,也综合考虑了各方面的原因,最终选择了 React,希望我"没有选错" ...
- AngularJS快速入门指南20:快速参考
thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...
- AngularJS快速入门指南19:示例代码
本文给出的大部分示例都可以直接运行,通过点击运行按钮来查看结果,同时支持在线编辑代码. <div ng-app=""> <p>Name: <input ...
- AngularJS快速入门指南18:Application
是时候创建一个真正的AngularJS单页面应用程序了(SPA). 一个AngularJS应用程序示例 你已经了解了足够多的内容来创建第一个AngularJS应用程序: My Note Save Cl ...
- AngularJS快速入门指南17:Includes
使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...
- AngularJS快速入门指南16:Bootstrap
thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...
随机推荐
- js模拟散列
//散列 //类似于 对象存储,key-value // 存入前,先将key进行hash编码,然后存入 function HashTable(){ var hashData = []; this.dj ...
- Java Selenium - 元素操作 (四)
四,弹出框 京东购物车为例 , 点击‘删除’ 或者‘移到我的关注’ ,就会弹出下面这个框框,练吧: (其实这也不是常规的弹出框,二是div css前端技术做的效果,本想做个Alert的案例,实在不好找 ...
- conda常用命令
1. conda基本命令 检查Anaconda是否成功安装 conda --version 检测目前安装了哪些环境 conda info --envs 检查目前有哪些版本的python可以安装: co ...
- ShakaApktool 用法
usage: ShakaApktool b[uild] [options] <app_path> -df,--default-framework 使用默认的框架资源文件. -f 跳过已编译 ...
- javascript 面向对象之路.2 - 小蜜蜂
接着上篇文章继续. 要实现上篇中gif图片的效果, 我们要写js, 算法并不是很复杂, 本次也仅仅展示了实现功能的代码, 并没有从面向对象的角度去构思或重构代码. 这里, 我们定义了一些变量, 用来定 ...
- <1>lua编译环境 数据类型和局部变量
1.编译环境 http://www.lua.org/download.html下载 解压后 bin目录中lua.exe运行 luac.exe编译成lua字节码 2.基本数据类型 整数,小数,布尔值 ...
- 详解Linux下iptables中的DNAT与SNAT设置(转)
详解Linux下iptables中的DNAT与SNAT设置 这篇文章主要介绍了Linux下iptables中的DNAT与SNAT设置,是Linux网络配置中的基础知识,需要的朋友可以参考下 原文连 ...
- uva 11183 Teen Girl Squad
题意: 有一个女孩,需要打电话让所有的人知道一个消息,消息可以被每一个知道消息的人传递. 打电话的关系是单向的,每一次电话需要一定的花费. 求出打电话最少的花费或者判断不可能让所有人知道消息. 思路: ...
- 转:【专题四】自定义Web浏览器
前言: 前一个专题介绍了自定义的Web服务器,然而向Web服务器发出请求的正是本专题要介绍的Web浏览器,本专题通过简单自定义一个Web浏览器来简单介绍浏览器的工作原理,以及帮助一些初学者揭开浏览器这 ...
- Git HEAD detached from XXX (git HEAD 游离) 解决办法
本文 Git 图片主要来自:图解 Git,非常感谢! 读完本文你将了解: 什么是 HEAD HEAD 游离状态的利与弊 具体解决操作 Thanks 什么是 HEAD Git 中的 HEAD 可以理解为 ...