$rootScope.$new()
- 新建一个干净的作用域
$scope.$new()
- 新建一个可继承的作用域
例子
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.6.8/angular.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
<div>
<h1>{{indexName}}</h1>
</div>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function ($scope,$compile,$rootScope) {
$scope.indexName = "主页";
_scope = $rootScope.$new();
console.log(_scope);
scope = $scope.$new()
console.log(scope);
});
</script>
</body>
</html>
- 打印
我们会发现继承的作用域中有父作用域的属性
$scope
在干什么
Scope
提供$watch
方法监视Model
的变化。Scope
提供$apply
方法传播Model
的变化。Scope
可以继承,用来隔离不同的application components
和属性访问权限。Scope
为Expressions
的计算提供上下文。