码迷,mamicode.com
首页 > Web开发 > 详细

AngularJs 实战 -慕课网

时间:2016-04-04 16:14:03      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:

https://www.codecademy.com/en/courses/learn-angularjs/lessons/your-first-app/exercises/your-first-app-hello-angularjs-i?action=resume
- MCV 只是手段,终极目标是模块化和复用

MVC Controller的实现方式

  • 不要使用继承,通用控制器,要使用Server 错误 技术分享 正确 技术分享

Controller使用过程中的注意点

  • 不要试图去复用Controller,一个控制器一般只负责一小块视图
  • 不要在Controller中操作DOM,这不是控制器的职责
  • 不要在Controller里面做数据格式化,ng有很好用的表单控件
  • 不要在Controller里面做数据过滤操作,ng有$filter服务
  • 一般来说,Controller是不会互相调用的,控制器之间的交互会通过事件进行

AngularJS 的MVC 都是借助作用域( $scope )来实现的

  • 作用域向上查找:$emit()
  • 作用域向下查找:$broadcast()
  • 每一个Angular应用只有一个$rootscope 对象(一般位于ng-app上)
  • $scope是一个树形结构,与DOM标签平行
  • 子\(scope对象会继承父\)scope上的属性和方法
  • $scope可以传播事件,类似DOM事件,可以向上也可以向下。
  • $scope不仅是MVC的基础,也是后面实现双向数据绑定的基础
  • 可以用angular.element($0).scope()进行调试

AngularJS 一切都是从模块(module)开始

  • app.js 入口程序,模块,路由功能 和 依赖注入
    • 依赖注入和页面引入的js顺序关联不大

AngularJS 双绑定

  • 双绑定:修改视图也可以修改模型上面的值
  • ng-bind 在首页中使用,可以隐藏{{ng变量}},不会显示模版变量
  • 使用双绑定的情景是表单最常用,重置一些值,修改class
  • 好处不用直接操作DOM,直接修改模型就可以了
  • ng-class : 增强表达 式
  • ng-show:通过判断是否显示内容
  • ng-animate:: 动画效果

AngularJS 路由

路由解决ajax的三个问题
  1. Ajax请求不会留下history记录
  2. 用户无法直接通过URL进入应用中指定的页面保存书签,链接分享给朋友?)
  3. Ajax对于seo差 >ui-router比angular自带的路由好用
前端路由的基本原理
  1. 哈希#,可以兼容旧版浏览器
  2. H5中新的history API
  3. 路由的核心是给应用定义『状态』
  4. 使用路由机制会影响到应用的整体编码方式(需要预先定义好状态)
  5. 考虑兼容性,优雅降级(旧用哈希,新用history)

AngularJs 实战 -慕课网

标签:

原文地址:http://www.cnblogs.com/maiyan/p/AngularJs-shi-zhan-mu-ke-wang.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!