浅谈angularJS 作用域

[复制链接]
查看: 351|回复: 9
发表于 2018-4-3 09:48:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

这篇文章主要介绍了浅谈angularJS 作用域的相关资料,需要的朋友可以参考下

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!doctype html>
<html ng-app="firstApp">
<head>
<meta charset="utf-8">
<script src="angular-1.3.0.js"></script>
</head>
<body>

<div ng-controller="parentCtrl">
<input ng-model="args">
<div ng-controller="childCtrl">
<input ng-model="args">
</div>
</div>
<script>
var app=angular.module('firstApp',[]);
app.controller('parentCtrl',function($scope) {
$scope.args = '123';
}).controller('childCtrl', function($scope) {

});
</script>

  案例说明:

  虽然在 childCtrl 中没有定义具体的 args 属性,但是因为 childCtrl 的作用域继承自 parentCtrl 的作用域,

  因此,childCtrl通过原型链 到父作用域args 属性并设置到input中。且在父input中输入值自己动同步到子input中

  但是反之不行。即子中修改,无法改变父中的值,且导致父修改后子也不同步了,原因:在子作用域input输入内容时,

  因为 HTML 代码中 model 明确绑定在 childCtrl 的作用域中,因此 AngularJS 会为 childCtrl 生成一个 args 原始类型属性。

  根据 AngularJS 作用域继承原型机制,childCtrl 在自己的作用域找到args属性值,故就不从父中查找args值。

  导致最终子作用域有args,父作用域有args,子和父之间的值不会再保持同步。

  以上所述就是本文的全部内容了,希望大家能够喜欢。


发表于 2018-5-9 21:44:37 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复

使用道具 举报

发表于 2018-5-27 12:37:49 | 显示全部楼层
确实是难得好帖啊,顶先
回复

使用道具 举报

发表于 2018-6-10 01:48:24 | 显示全部楼层
我只是路过打酱油的
回复

使用道具 举报

发表于 2019-2-9 00:34:00 | 显示全部楼层
正需要,支持楼主大人了!
回复

使用道具 举报

发表于 2019-2-15 20:42:07 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复

使用道具 举报

发表于 2019-2-27 03:24:24 | 显示全部楼层
这个帖一般般,还可以哦。
回复

使用道具 举报

发表于 2019-3-4 03:37:53 | 显示全部楼层
确实是难得好帖啊,顶先
回复

使用道具 举报

发表于 2019-3-4 19:32:21 | 显示全部楼层
额,看不懂在说神马~@_@
回复

使用道具 举报

发表于 2019-3-5 09:56:22 | 显示全部楼层
么有分,谁能送我点积分啊::>_<::
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接
 
 
工作时间:
8:00-18:00
客服热线:
15368564009
客服微信