博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AngularJS模块之$scope
阅读量:7065 次
发布时间:2019-06-28

本文共 960 字,大约阅读时间需要 3 分钟。

Angular中创建一个模块:

angular.module("myApp",[]).controller("myController",function("$scope"){   $scope.name="my name"; })

Hello {
{ name }}

ng-controller指令为DOM元素创建了一个新的$scope对象,并将它嵌套在$rootScope中,$rootScope相当于最顶层的全局变量。、

$scope的生命周期:

当Angular关心的事件发生在浏览器中时,比如用户在通过ng-model属性监控的输入字段中输入,或者带有ng-click属性的按钮被点击时,Angular的事件循环都会启动。这个事件将在Angular执行上下文中处理。

每当事件被处理时,$scope就会对定义的表达式求值。此时事件循环会启动,并且Angular应用会监控应用程序内的所有对象,脏值检测循环也会运行。

1.创建

在创建控制器或指令时,AngularJS会用$injector创建一个新的作用域,并在这个新建的控

制器或指令运行时将作用域传递进去。

2.链接

当Angular开始运行时,所有的$scope对象都会附加或者链接到视图中。所有创建$scope对

象的函数也会将自身附加到视图中。这些作用域将会注册当Angular应用上下文中发生变化时需
要运行的函数。

这些函数被称为$watch函数,Angular通过这些函数获知何时启动事件循环。

3.更新

当事件循环运行时,它通常执行在顶层$scope对象上(被称作$rootScope),每个子作用域

都执行自己的脏值检测。每个监控函数都会检查变化。如果检测到任意变化,$scope对象就会触
发指定的回调函数。

4.销毁

当一个$scope在视图中不再需要时,这个作用域将会清理和销毁自己。

尽管永远不会需要清理作用域(因为Angular会为你处理),但是知道是谁创建了这个作用域
还是有用的,因为你可以使用这个$scope上叫做$destory()的方法来清理这个作用域。

 

转载于:https://www.cnblogs.com/hutuzhu/p/4353021.html

你可能感兴趣的文章
模板显式、隐式实例化和(偏)特化、具体化的详细分析
查看>>
LD1-K(求差值最小的生成树)
查看>>
crontab定时任务配置
查看>>
[转]用Hyper-v 和Failover Cluster 创建高可用性虚拟机
查看>>
Bootstrap 3之美04-自定义CSS、Theme、Package
查看>>
Visual Studio断点调试, 无法监视变量, 提示无法计算表达式
查看>>
看完人体展之后
查看>>
《Unity3D大风暴之入门篇(海量教学视频版)》
查看>>
ASP.NET DridView 显示行号
查看>>
敏捷术语
查看>>
一起谈.NET技术,SharePoint 2010 整合Silverlight 4应用 - 任务管理
查看>>
Eclipse项目JavaScript报错
查看>>
CSS中超链接样式的书写顺序
查看>>
C#摄像头编程
查看>>
Activity的启动模式<standard,singleTop,singleTask,singleInstance>(转)
查看>>
C#接口-接口作用浅谈
查看>>
在VC下显示JPEG、GIF格式图像的一种简便方法
查看>>
Emacs 删除空白行 排序
查看>>
听说百度网盘可以这样下载文件
查看>>
python数据库连接池
查看>>