angularJS中有一个重要的属性Scope,作用域。
web编程中,我们需要获取页面中的某个控件,某个属性,一般我们都用到document或者类似的一个对象来获取整个表单的内容。
在angularJS中,
Scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带。
Scope 是一个对象,有可用的方法和属性。
Scope 可应用在视图和控制器上

Scope的使用

对一个值初始化,如下代码

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title></title><script src="Scripts/angular.min.js" ></script>
</head>
<body><!--Scope简单使用--><div ng-app="myProgram" ng-controller="myCtrl"><h1>{{heroName}}</h1></div><script>var app = angular.module('myProgram', []);app.controller('myCtrl', function ($scope) {$scope.heroName = "疾风剑豪 亚索";});
</script></body>
</html>

结果

页面显示了初始结果

如上,JS中通过$scope获取到了html对象,然后$scope.heroName取到属性进行赋值。

angularJS的组成主要为M,V,C,
它们是:
View,视图,用于展示和接收数据的,即html页面;
Model,模型,视图中的数据;
Controller,控制器,javascript函数,用户对视图的数据或者属性进行修改,展示和接收不同的交互结果。
scope 我们可以理解为是一个 JavaScript 对象,带有属性和方法,这些属性和方法可以在视图和控制器中使用。
比如

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title></title><script src="Scripts/angular.min.js" ></script>
</head>
<body><!--Scope简单使用--><div ng-app="myProgram" ng-controller="myCtrl"><input ng-model="heroName"><h1>我最爱使用的英雄是 {{heroName}}</h1></div><script>var app = angular.module('myProgram', []);app.controller('myCtrl', function ($scope) {$scope.heroName = "德邦总管 赵信";});
</script></body>
</html>

结果

输入框的内容修改后,显示的内容也会跟着修改。这就是常用的视图数据更新后,模型和控制器的数据也要更新。

Scope 作用范围


scope 有自己的作用域,在复杂的项目中,DOM有很多作用域,我们来看看scope的作用域。

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title></title><script src="Scripts/angular.min.js" ></script>
</head>
<body><!--作用域-->
<div ng-app="myProgram" ng-controller="myCtrl"><ul><li ng-repeat="x in names">{{x}}</li></ul></div><script>var app = angular.module('myProgram', []);app.controller('myCtrl', function ($scope) {$scope.names = ["英雄联盟", "王者荣耀", "穿越火线"];});
</script></body>
</html>

结果

使用ng-repeat循环数组内的每一个值,每个重复项都访问了当前的重复对象:
每个 <li> 元素可以访问当前的重复对象,这里对应的是一个字符串, 并使用变量 x 表示。

根作用域
所谓根作用域,是指在整个页面中有一个总的scope,叫做$rootScope,它能获取所有html元素,能获得各个scope,使用根作用域来在各controller中进行数据交换。

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server"><title></title><script src="Scripts/angular.min.js" ></script>
</head>
<body><!--根作用域--><div ng-app="myProgram" ng-controller="myCtrl"><h1>{{heroName}} 英雄列表:</h1><ul><li ng-repeat="x in names">{{x}} {{heroName}}</li></ul></div><script>var app = angular.module('myProgram', []);app.controller('myCtrl', function ($scope, $rootScope) {$scope.names = ["时间刺客", "皮城法警", "迅捷斥候"];$rootScope.heroName = "英雄联盟 ";});
</script></body>
</html>

效果

$rootScope 作为参数传递,可在应用中使用。

本文代码: http://download.csdn.net/detail/yysyangyangyangshan/9699263

AngularJS 0005:作用域相关推荐

  1. 理解AngularJS的作用域Scope

    为什么80%的码农都做不了架构师?>>>    理解AngularJS的作用域Scope https://github.com/angu- 08-02 22:45 10-14 09: ...

  2. 从零学前端第十四讲:AngularJs进阶-作用域和控制器

    修真院Web工程师零基础全能课 本节课内容 AngularJs进阶-作用域和控制器 主讲人介绍 沁修,葡萄藤技术总监 项目经验丰富,擅长H5移动项目开发. 专注技术选型.底层开发.最佳代码实践规范总结 ...

  3. AngularJS Scope(作用域)

    Scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带 Scope 是一个对象,有可用的方法和属性 创建控制器时,你可以将 $scope 对象当作一个参数传 ...

  4. angularjs学习第八天笔记(指令作用域研究)

    您好,在前两天对指令的简单了解和系统指令学习后 今天主要研究其指针作用域的相关事情 每一个指令在创建时,其实就构成了自己的一个小的模块单元. 其对于的模块单元都有着其对于的作用域,其中作用域一般有两种 ...

  5. AngularJS 作用域与数据绑定机制

    AngularJS 简介 AngularJS 是由 Google 发起的一款开源的前端 MVC 脚本框架,既适合做普通 WEB 应用也可以做 SPA(单页面应用,所有的用户操作都在一个页面中完成).与 ...

  6. html 根作用域,AngularJS入门教程之Scope(作用域)

    AngularJS Scope(作用域) Scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带. Scope 是一个对象,有可用的方法和属性. Scope ...

  7. 一款优秀的JavaScript框架—AngularJS

    AngularJS简介 AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购.是一款优秀的前端JS框架,已经被用于Google的多款产品当中.Angular ...

  8. Angularjs基础(三)

    AngularJS ng-model 指令 ng-model 指令用于绑定应用程序数据到HTML 控制器(input,select,textarea)的值 ng-model指令 ng-model指令可 ...

  9. 一款优秀的前端JS框架—AngularJS

      前  言 AngularJS 是一个 JavaScript 框架.它可通过 <script> 标签添加到 HTML 页面. AngularJS 通过 指令 扩展了 HTML,且通过 表 ...

最新文章

  1. 全球43亿IPv4地址正式耗尽,IPv6才是物联网的菜
  2. Hadoop通过路径和和链接访问HDFS
  3. java基础 - file类(递归遍历目录)
  4. 怎么检测mysql卸载完全_怎么检查mysql有没有删干净
  5. .NET(C#):浅谈程序集清单资源和RESX资源
  6. java 状态机_基于 RAFT 一致性算法的 Java 实现 SOFAJRaft
  7. [洛谷P1438] 无聊的数列
  8. 排序算法之——堆排序分析
  9. 5.2 tensorflow2实现多元线性回归、完成广告投放销售额预测——python实战
  10. download.js实现下载的基本用法
  11. 深入浅出Dubbo剖析出视频教程了!!!
  12. Web安全测试工具Appscan
  13. Book Sharing
  14. 互联网企业使用云计算,有什么优势?
  15. Deep Attention Recurrent Q-network(DRAQN)论文笔记
  16. 【leetcode】483. 最小好进制 Java题解
  17. oracle计算两个日期的相差的小时数、分钟数、秒数
  18. 一文讲透:HMM隐马尔科夫模型
  19. PTGUI全景合成软件使用教程之镜头参数设置
  20. 超级淘的安全性,科普一下超级淘到底有多安全

热门文章

  1. python的取整和取余_Python中取余、除法、取整的操作逻辑
  2. Cocos Creator下JavaScript模拟射箭效果,附代码
  3. 红盟域名第三方域名管理漏洞公告————【Badboy】
  4. Python安装、断点调试
  5. 《Python编程从入门到实践》,留言送5本
  6. RH124(8.0)-介绍及第一章课后习题
  7. ubuntu双系统忘记密码
  8. 15步打造一个安全的Linux服务器
  9. 每周读书#1 - 《文心》
  10. 王者外服服务器为响应,王者荣耀外服叫什么 外服版进入方法详解[多图]