有人可以帮我解释一下AngularJS中的这段代码吗
$rootScope.compiledScope = $scope.$new(!0, $rootScope), $scope.variable = "someValue";
从文档开始,该$new
函数接受2个参数。
第一部分:
$new(isolate, parent);
孤立:如果为true,则会为您正在创建的新范围创建隔离范围。这基本上意味着它不会从父范围继承。它将从父作用域继承,但父作用域属性对它不可见。
parent:
$scope
这将是新创建的范围的父级。!0:在大多数编程语言中0 == false。否定这将给你
true
。
因此,解密代码的第一部分:
$rootScope.compiledScope = $scope.$new(!0, $rootScope)
将名为compiledScope
$ rootScope的属性添加到您的$ rootScope,其值将是一个新的隔离范围,其父级为$ rootScope。
孤立范围:原型上不继承其父范围的范围。它基本上是一个空作用域,并且它的父级属性都不可见。
第二部分
$scope.variable = "someValue";
将附加variable
到,$scope
并将其值设置为someValue
。而逗号之间只是分隔2条语句,就像这样做:
$rootScope.compiledScope = $scope.$new(!0, $rootScope);
$scope.variable = "someValue";
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句