首页 > 代码库 > AngularJs学习笔记(慕课网)
AngularJs学习笔记(慕课网)
1. Controller使用过程中的注意点
- 不要试图去复用Controller, 一个控制器一般只负责一小块视图
- 不要在Controller中操作DOM, 这不是控制器的职责. 封装在指令里.
- 不要在Controller中做数据格式化, ng有很好用的表单控件
- 不要在Controller里面做数据过滤操作, ng有$filter服务
- 一般来说, Controller是不会互相调用的, 控制器之间的交互会通过事件进行 ---> 这是强耦合
2.
<html ng-app> <div> <input ng-model="greeting.text"/> <p>{{greeting.text}}, Angular</p> </div> .... <script src="js/angular-1.3.0.js"></script> <html>
则p标签中的值会随着input里的输入进行改变.
启动后, 会找ng-app中的指令. 找到ng-model后会生成greeting.text数据模型, 这个模型挂载scope根目录下, 这样所有的{{greeting.text}}都可以获得其值
3. Angularjs的MVC是借助于$scope实现的
作用域也是有层次结构的, 如果在内层作用域中没有找到值则会向上去找, 类似JS中的原型查找
4. 关于$scope
- $scope是一个POJO(Plain Old JavaScript Object)
- $scope提供了一些工具方法$watch()/$apply()
- $scope是表达式的执行环境(或者叫作用域)
- $scope是一个树形结构, 与DOM标签平行
- 子$scope对象会继承父$scope上的属性和方法
- 每一个Angular应用只有一个根$scope对象(一般位于ng-app上)
- $scope可以传播事件, 类似DOM事件, 可以向下也可以向上
- $scope不仅是MVC的基础, 也是后面实现双向数据绑定的基础
- 可以用angular.element($0).scope()进行调试
- $scope的生命周期: Creation->Watcher registration->Model mutation->Mutation observation->Scope destruction
AngularJs学习笔记(慕课网)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。