第1章 快速上手

放弃了IE8以及以下,不支持。

4大核心特性:

1.MVC

  Model: 数据模型

  View:视图

  Controller:业务逻辑和控制逻辑

  好处:职责清晰,模块化。

2.模块化

3.指令系统 (AngularJs特有的)

4.双向数据绑定(AngularJs特有的)

开发工具: webstorm最强大,占用资源比较多。轻量级:sublime.

调试工具:chrome插件batarang, 它是专门针对angularJS的。

版本管理工具: git小乌龟

基于nodejs的开发和调试工具

混淆工具:grunt

依赖管理工具:bower, 自动安装需要的插件,比如jquery。 比如bootstrap依赖jquery,删掉jquery的时候,它会提示你。  不是很有必要用。

轻量级的http server, 基于nodejs。  github.com上下载

单元测试工具:karma,它没有写单元测试用例的功能。 结合 jasmine用。 这样前台也能实现自动化测试了。

为AngularJs专门设计的测试工具:Protractor

第2章 基本概念和用法

2.1 MVC:为了模块化和复用。

  代码规模越来越大,切分职责。

  复用:很多逻辑是一样的。

  后期维护方便,改一块不影响其他。

Controller实现:不推荐用Controller嵌套,实现通用(<div ng-controller='parent'><div ng-controller='child'></div></div>), ng的规范写法是:把公共的东西做成Service。

Angular Controller注意要点:

1.不要试图复用Controller,gn设计思想,是用来存放业务逻辑的,没有复用的必要。

2.不要操作dom,用指令去操作。会造成页面重新布局,这个操作是非常耗资源。

3.不要做数据格式化,ng有很好的表单控件

4.不要做数据过滤操作,ng有$filter服务

5.一般来说Controller不会相互调用,是函数方法调用,太高耦合了。控制器交互通过事件进行。

  通过scope或者数据模型上的事件进行交互,Controller在内部监控这些事件,从而实现交互。

Model: $scope.属性

View: 通过指令Directive实现

ng中MVC全部借助于$scope实现。

先在$scope中找指令,如果没有找到,再找$rootScope。 (通过查看源文件发现,和想象之中一样,页面render到浏览器的是没有解析过的指令,最终呈现的是ng解析过的demo)

第3章 核心原理解析
第4章 用AngularJS开发移动APP
第5章 前端自动化测试 TDD(测试驱动开发)

课程地址:http://www.imooc.com/view/156

AngularJs学习笔记-慕课网AngularJS实战的更多相关文章

  1. 《AngularJs实战》学习笔记(慕课网)

    1. Controller使用过程中的注意点 不要试图去复用Controller, 一个控制器一般只负责一小块视图 不要在Controller中操作DOM, 这不是控制器的职责. 封装在指令里. 不要 ...

  2. AngularJs学习笔记--unit-testing

    原版地址:http://docs.angularjs.org/guide/dev_guide.unit-testing javascript是一门动态类型语言,这给她带来了很强的表现能力,但同时也使编 ...

  3. AngularJs学习笔记--Forms

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/forms 控件(input.select.textarea)是用户输入数据的一种方式.Form(表单) ...

  4. AngularJs学习笔记--expression

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/expression 表达式(Expressions)是类Javascript的代码片段,通常放置在绑定 ...

  5. AngularJs学习笔记--directive

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/directive Directive是教HTML玩一些新把戏的途径.在DOM编译期间,directiv ...

  6. AngularJs学习笔记--Guide教程系列文章索引

    在很久很久以前,一位前辈向我推荐AngularJs.但当时我没有好好学习,仅仅是讲文档浏览了一次.后来觉醒了……于是下定决心好好理解这系列的文档,并意译出来(英文水平不足……不能说是翻译,有些实在是看 ...

  7. AngularJs学习笔记--bootstrap

    AngularJs学习笔记系列第一篇,希望我可以坚持写下去.本文内容主要来自 http://docs.angularjs.org/guide/ 文档的内容,但也加入些许自己的理解与尝试结果. 一.总括 ...

  8. AngularJs学习笔记--html compiler

    原文再续,书接上回...依旧参考http://code.angularjs.org/1.0.2/docs/guide/compiler 一.总括 Angular的HTML compiler允许开发者自 ...

  9. AngularJs学习笔记--concepts(概念)

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/concepts 继续.. 一.总括 本文主要是angular组件(components)的概览,并说明 ...

随机推荐

  1. 设置lable文本内容的行间距

    NSMutableParagraphStyle *paragraphStyle =[ [NSMutableParagraphStyle alloc] init]; paragraphStyle.lin ...

  2. 前端神器 Firebug 2.0 新特性一览

    如果你从事Web前端方面的开发工作,那么对Firebug一定不会陌生,这是Firefox浏览器的一款插件,集HTML查看和编辑.Javascript控制台.网络状况监视器于一体,给Web开发者带来了极 ...

  3. 使用SurfaceView播放RGB原始视频-2016.01.22

    1 程序代码 使用Android中的SurfaceView播放RGB视频数据,SufaceView播放代码如下: package com.zhoulee.surfaceviewdemo; import ...

  4. dig out secrets beneath AirSig

    My sister installed AirSig last week. She is so exciting about this new techknology and she won't st ...

  5. leetcode 119

    119. Pascal's Triangle II Given an index k, return the kth row of the Pascal's triangle. For example ...

  6. typedef 及其与struct的结合使用

    //相当于为现有类型创建一个别名,或称类型别名. //整形等 typedef int size; //字符数组 ]; ];//=> typedef ]; Line text, secondlin ...

  7. CentOS 5.X安装LAMP最高版本环境

    #------------CentOS 5.X安装LAMP最高版本环境------------------#! /bin/sh #安装Apacheyum install httpd -y#1.关闭se ...

  8. 【Winform】DataTable绑定到ComboBox

    我们从数据库中查询出来的数据存放在Datatable中 1.DataTable绑定到ComboBox上 cmbRole.DataSource = datatable; cmbRole.DisplayM ...

  9. dispatchTouchEvent & onInterceptTouchEvent & onTouchEvent

    http://www.cnblogs.com/jqyp/archive/2012/04/25/2469758.html dispatchTouchEvent       分发 onInterceptT ...

  10. 用开源中国(oschina)Git管理代码(整合IntelliJ 13.1.5)

    简介 开源中国提供了Git服务(地址:http://git.oschina.net/),在速度上比国外的github要快很多.使用了一段时间,感觉很不错.oschina git提供了演示平台,可以运行 ...