angularjs学习第八天笔记(指令作用域研究)
您好,在前两天对指令的简单了解和系统指令学习后
今天主要研究其指针作用域的相关事情
每一个指令在创建时,其实就构成了自己的一个小的模块单元。
其对于的模块单元都有着其对于的作用域,其中作用域一般有两种情况:
其一、继承父级作用域;其二、自己完全独立开辟一个新的作用域。
angularjs其作用域通过scope来实现,其取值有三种情况:true、false、{}
其默认值是false:学习也就针对这3种情况进行研究
其一、scope=false
和父级完全共用一个作用域
其二、scope=true
创建了一个新的 作用域,初始化时继承父作用域
表现形式:当子作用域属性值不改变一直使用父作用域对应的属性值
一旦子作用域的属性值发生改变,就在受父作用域影响
但是:这一切的前提是:数值是值类型(字符串、布尔、数值)
也就是说:当数值为应用类型(obj)时其实和
为了直观的体现两种的差异,下面进行一个练习:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body ng-app="myApp" ng-controller="myContro">
父(字符串):{{message}}<br />
<input type="text" ng-model="message" /><br />
名字(对象):<input type="text" ng-model="user.name" /><br />
<div style="width:auto;border-bottom:2px solid #000000">
<h4>scope=true:创建了一个新的 作用域,初始化时继承父作用域</h4>
</div>
<div my-direct>
孩(字符串):{{message}}<br />
<input type="text" ng-model="message" /><br />
名字(对象):<input type="text" ng-model="user.name" /><br />
</div>
<div style="width:auto;border-bottom:2px solid #000000">
<h4>scope=false:和父级完全共用一个作用域</h4>
</div>
<div my-direct>
孩(字符串):{{message}}<br />
<input type="text" ng-model="message" /><br />
名字(对象):<input type="text" ng-model="user.name" /><br />
</div>
<div style="width:auto;border-bottom:2px solid #000000">
</div>
<h4>小结</h4>
scope=true:创建了一个新的 作用域,初始化时继承父作用域<br />
<div style="margin-left:100px;">
表现形式:当子作用域属性值不改变一直使用父作用域对应的属性值<br />
一旦子作用域的属性值发生改变,就在受父作用域影响<br />
但是:这一切的前提是:数值是值类型(字符串、布尔、数值)<br />
也就是说:当数值为应用类型(obj)时其实和<br />
</div>
scope=false:和父级完全共用一个作用域<br /> </body>
</html>
<script src="Scripts/angular.js"></script>
<script type="text/javascript">
var app = angular.module("myApp", []); app.controller("myContro", function ($scope) {
$scope.message = "im father message";
$scope.user = {
name: "father"
}
}); app.directive("myDirect", function () {
return {
restrict: "A",
replace: true,
scope: true
};
}); app.directive("myDirect2", function () {
return {
restrict: "A",
replace: true,
scope: false
};
});
</script>
angularjs学习第八天笔记(指令作用域研究)的更多相关文章
- angularjs学习第九天笔记(指令作用域【隔离作用域】研究)
您好,昨天学习了指令作用域为布尔型的情况, 今天主要研究其指针作用域为{}的情况 1.当作用域scope为{}时,子作用域完全创建一个独立的作用域, 此时,子做预约和外部作用域完全不数据交互 但是,在 ...
- AngularJS高级程序设计读书笔记 -- 指令篇 之 内置指令
1. 内置指令(10-12 章) AngularJS 内置超过 50 个内置指令, 包括 数据绑定,表单验证,模板生成,时间处理 和 HTML 操作. 指令暴露了 AngularJS 的核心功能, 如 ...
- 关于AngularJS学习整理---浅谈$scope(作用域) 新手必备!
作为初次接触 AngularJS的新手,想要深层理解里面的内容短时间还是不可能的,所以标题写了浅谈字样,以下内容是参考各位大神以及相关书籍整理加个人理解,出现错误的地方请大家指正. $scope(作用 ...
- AngularJS高级程序设计读书笔记 -- 指令篇 之 自定义指令
2. 自定义指令(15-17 章) Module.directive(name, factory) 2.1 创建自定义指令的方法 Module.directive(name, factory) 示例 ...
- angularjs学习第一天笔记
您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点 ...
- angularjs学习第二天笔记---过滤器
您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点 ...
- iOS 阶段学习第八天笔记(指针)
iOS学习(C语言)知识点整理 一.指针 1)概念:存储变量的地址的一个变量. 2) 数据存储类型分析 1.text (代码段) :存储二进制的可执行代码 2.data(初始化的数据段) 存储初始化的 ...
- 【AngularJS学习笔记】01 指令、服务和过滤器
AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-. 比如: ng-app 指令初始化一个 AngularJS 应用程序.注意ng-app一般为空,如果值不为空,就得加这样一句代码va ...
- 前端MVC学习笔记(二)——AngularJS验证、过滤器、指令
一.验证 angularJS中提供了许多的验证指令,可以轻松的实现验证,只需要在表单元素上添加相应的ng属性,常见的如下所示: <input Type="text" ng-m ...
随机推荐
- qhfl-7 结算中心
结算中心,即从购物车前往支付前的确认页面,这里要开始选择优惠券了 """ 前端传过来数据 course_list 课程列表 redis 中将要存放的结算数据 { sett ...
- 让photoshop cc 支持 webp格式
下载WebP.8bi文件,看PS cc 是32位还是64位,找到对应的文件. brushes8.com-2017-11-03_08-29-21_654098.7z 把 WebP.8bi 复制到pho ...
- div辅助线【完整版】
## <html> <head> <link rel="stylesheet" type="https://cdn.bootcss.com/ ...
- PostgreSQL与PostGIS的关系
PostgreSQL相当于PostGIS的祖先,PostGIS是在PostgreSQL的基础上发展起来的,从它们的名字上也能看出些许端倪.PostgreSQL是一个开源数据库,而PostGIS在此基础 ...
- 前端vue框架 路由的安装及使用
安装: 1.cmd下输入: npm install vue-router --save //安装路由 2.npm run dev //重新启动 使用: 1.在mian.js下引入路由 import V ...
- IntelliJ IDEA 2018.1.3 破解方法之一
IntelliJ IDEA 2018.1.3 破解方法之一 声明:如果资金充足请购买正版! NO1 下载安装IntelliJ IDEA 企业版 NO2 下载jar包 (1)下载地址:http://id ...
- Win32 CMD批处理命令
1. win32批处理下,另开一个console执行进程X 使用start [/K|/C],示例: //------------------------------------------------ ...
- 不熟,不会,未a的题列表
不熟: jzoj5968. 电竞选手(不知道公式如何得来) jzoj4877. [NOIP2016提高A组集训第10场11.8]力场护盾 (对向量不熟悉,不知道为什么结果要取反) jzoj4867. ...
- springmvc接受及响应ajax请求。 以及@RequestBody 和@ResponseBody注解的使用
1.发送ajax请求 $.ajax({ url:"user/testAjax", contentType:"application/json;charset=UTF-8& ...
- hadoop安装hbase
1.安装hadoop hadoop安装请参考我的centoos 安装hadoop集群 在安装hadoop的基础上新增了两台slave机器,新增后的配置为 H30(192.168.3.238) mast ...