AngularJS 深远了解 $scope 转载▼

AngularJS 深远明 $scope AngularJS 1转载▼

 AngularJS 2 (2015-04-07 14:09:50)

 

 

$scope 的采取贯穿整个 AngularJS
App 应用,它和数据模型相关联,同时也是表明式执行之内外文.有了$scope 就当视图和控制器之间建立了一个通路,基于效率域视图在修改数据平时会立即更新 $scope,同样的 $scope暴发反时为会合及时还渲染视图.

 

起了 $scope 这样一个大桥,应用之作业代码可以还在 controller 中,而数都存放于controller 的 $scope 中.

AngularJS 3

$rootScope

AngularJS 应用启动并转视图时,会将根 ng-app 元素与 $rootScope 举办绑定.$rootScope 是装有$scope 的极其上层对象,可以知晓吧一个 AngularJS 应用被得全局效用域对象,所以为它附加太多逻辑或者变量并无是一个吓主意,和招 Javascript 全局功用域是一致的.

$scope 的作用

$scope 对象在 AngularJS 中担任数据模型的成效,也就是是形似 MVC 框架中 Model 得角色.但又不净和一般意义及的数据模型一样,因为 $scope 并无处理以及操作数据,它可是是立了视图和 HTML 之间的桥梁,让视图和Controller 之间可自己之通讯.

再进一步系统的分它的意向和力量:

1.提供了观看者可以监听数据模型的转移

2.得以数据模型的别文告被整 App

3.足展开嵌套,隔离业务效用与数目

4.于表明式提供上下文执行环境

于 Javascript 中创立一个初的履上下文,实际就是用函数创设了一个初的本地及下文,在 AngularJS 中当为子DOM 元素创立新的用意域时,其实就是为子 DOM 元素创设了一个新的施行上下文.

$scope 生命周期

AngularJS 中呢暴发一个’事件’的定义,比如当一个绑定了 ng-model 的 input 值发生变化时,或者一个 ng-click的 button 被点击时,AngularJS 的风波循环就会起动.事件循环是 AngularJS 中好酷主旨之一个概念,因为无是本文核心所以未多说,感兴趣之得友善省资料.这里事件就当 AngularJS 执行上下文中处理,$scope 就会指向定义之表明式求值.此时事件循环为启动,
AngularJS 会监控应用程序内所有目的,脏值检查循环也会晤起来动.

$scope 的生命周期有4只级次:

1. 创建

控制器或者指令创造时,
AngularJS 会使用 $injector 创立一个新的效用域,然后在控制器或指令运行时,将效率域传递进去.

2. 链接

AngularJS 启动后会面拿所有 $scope 对象附加或者说链接到视图上,所有创立 $scope 对象的函数也相会被增大到视图上.这一个效用域将会晤报当 AngularJS 上下文暴发变化时索要周转的函数.也便是 $watch 函数,
AngularJS 通过这个函数或者几时起事件循环.

3. 更新

要事件循环先导运行,就会起施行好的脏值检测.一旦检测到转,就晤面触发 $scope 上指定的回调函数

4. 销毁

 

AngularJS,普普通通来讲要一个 $scope 在视图中不再用,
AngularJS 会自己清理它.当然为可以由此 $destroy() 函数手动清理.

分享: 

 

相关文章