美文网首页
Angular.js学习笔记

Angular.js学习笔记

作者: 游牧人JOE | 来源:发表于2017-03-03 21:09 被阅读0次

    angular.js核心特性:1、MVC 2、模块化Module 3、指令系统 4、双向数据绑定

    基本概念与用法:MVC、模块化与依赖注入、双向数据绑定、指令、Service、Provider、表单

    内容简介:Angular.js模块化实现、一个完整的项目结构是什么样的、使用ngRoute进行视图间的路由、模块的切分方式、模块之间的依赖该怎么做?(依赖注入)

    双向数据绑定内容简介:取值表达式与ng-bind指令、双向绑定的典型场景-表单、动态切换标签样式、ng-show和ng-hide、ng-class、ng-Animate

    MVC

    为什么需要MVC?
    1、因为代码规模越来越大,不能够一份js代码把所有业务全部写完,所以切分代码是必须的。
    2、为了复用,有很多逻辑是一样的。
    3、为了后期维护方便,修改一块功能不影响其他功能

    MVC只是手段,最终目的还是模块化和复用。

    前端MVC的困难?
    1、操作DOM的代码必须等待整个页面全部加载完成
    2、多个js文件如果出现相互依赖,程序员要自己解决
    3、js原型继承也给前端编程造成许多困难

    Controller使用过程中的注意点:
    1、不要试图去复用Controller一个控制器一般只负责一小块视图
    2、不要再Controller中操作DOM,这不是控制器的职责
    3、不要在Controller里面做数据格式化,ng有很好的表单控件
    4、不要在Controller里面做数据过滤操作,ng有filter服务
    5、一般来说,Controller是不会互相调用的,控制器之间的交互会通过事件进行。

    双向数据绑定三个问题(来自慕课网大漠)
    1、为什么其他所有前端框架都不实现双向数据绑定?
    2、如果让你来实现双向数据绑定,你会怎么实现?
    3、双向数据绑定有什么潜在的缺点吗?

    我们需要什么样的前端开发环境:

    • 代码编辑工具:sublime、webstorm
    • 断点调试工具:angularJS Batarang(chrome插件)
    • 版本管理工具:git
    • 代码合并和混淆工具:grunt
    • 依赖管理工具:bower
    • 单元测试工具:karma jasmine
    • 集成测试工具:Protractor(专为angular定制)

    搭建自动化的前端开发、测试、调试环境

    jasmine

    • describe(string,function)这个函数表示分组,也就是一组测试用例
    • it(string,function)这个函数表示测试用例
    • expect(expression)表示期望expression这个表达式具有某个值或者具有某种行为。
    • to***(arg)这个函数表示匹配

    相关文章

      网友评论

          本文标题:Angular.js学习笔记

          本文链接:https://www.haomeiwen.com/subject/dggrgttx.html