您的位置:首页 > Web前端 > AngularJS

angularjs学习笔记--作用域

2016-07-15 09:30 387 查看
angularjs学习笔记--作用域

最近开始学习angularjs.这里记录一些学习笔记。

作用域是视图和控制器的胶水,在应用将视图呈现给用户之前,视图中的模板会和作用域进行连接。

$scope,是一个作用域对象,类似于javascript当中的scope,但又与之不同。作用域可以监视数据模型变化。一般将数据的业务逻辑放在控制器中,将相关的数据放在控制器的作用域中。

$rootscope是一个全局作用域,相当于javascript当中的全局作用域,一般不再$rootscope上附加太多的业务逻辑,这如同给javascript附加太多全局变量污染全局环境是一个道理。

$scope对象就是一个普通的javascript对象,可以在其上任意添加修改属性,它不负责处理数据,只负责显示数据,它的所有属性都可以自动被视图访问到。

作用域的基本功能:

1.提供观察者以监控数据模型的变化

2.可以将数据模型中的变化通知给整个应用,甚至是系统外的组件

3.可以进行嵌套,可以业务功能与数据

4.给表达式提供运算时所需的执行环境

作用域的生存周期:

1.创建:在创建控制器或指令时,会创建一个新的作用域。

2.链接:当angular开始运行时,所有$scope会附加或者链接到视图中去.这些作用域将会注册当angular应用上下文发生变化时需要运行的函数。$watch,检测何时启动循环事件.

3.更新:当循环事件运行时,每个监控函数都会检测到变化,如果有检测到变化,就会执行指定的回调函数。

4.销毁:当一个$scope在作用域中不再需要时,它会自动清除和销毁自己。(有点像javascript当中的垃圾回收,感觉有莫有~~)。也可以使用¥destory()来清除 。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: