<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/lib/AngularJS/angular.min.js"></script>
</head>
<body>
<div ng-controller="c1">
<div ng-bind="nickname"></div>
<div ng-bind="username"></div>
<div ng-bind="realname"></div>
</div>
<hr>
<div ng-controller="c2">
<div ng-bind="nickname"></div>
<div ng-bind="username"></div>
<div ng-bind="realname"></div>
</div>
<hr>
<div ng-controller="c3">
<div ng-bind="nickname"></div>
<div ng-bind="username"></div>
<div ng-bind="realname"></div>
</div>
<script>
var app = angular.module("myApp", []);
// 三个控制器中,都要使用到一个数据:用户昵称~: nickname=董小姐
/*
为了方便多个控制器中的公共数据初始化
AngularJS提供了一个全局作用域对象$rootScope
AngularJS应用中,仅有一个全局作用域,其他所有的$scope作用域都是$rootScope的子元素
*/
/*
使用$rootScope,可以用于初始化全局变量和函数
但是存在一个问题: 因为控制器函数中可以直接使用$rootScope,就有可能会造成全局数据污染
规范:$rootScope一般和Angular模块的run()方法一起使用。来进行全局数据的初始化
*/
app.controller("c1", function($rootScope, $scope) {
$scope.nickname = "董小姐";
$scope.realname = "曾大神";
/*$rootScope.username = "刘帅哥";
$rootScope.userID = 12;*/
});
app.controller("c2", function($scope) {
$scope.nickname = "董小姐";
});
app.controller("c3", function($rootScope, $scope) {
$scope.nickname = "董小姐";
/*$rootScope.username = "尼神";*/
});
/* 专门用于初始化全局数据 */
app.run(function($rootScope) {
$rootScope.username = "大刘帅哥";
});
</script>
</body>
</html>
<html ng-app="myApp">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/lib/AngularJS/angular.min.js"></script>
</head>
<body>
<div ng-controller="c1">
<div ng-bind="nickname"></div>
<div ng-bind="username"></div>
<div ng-bind="realname"></div>
</div>
<hr>
<div ng-controller="c2">
<div ng-bind="nickname"></div>
<div ng-bind="username"></div>
<div ng-bind="realname"></div>
</div>
<hr>
<div ng-controller="c3">
<div ng-bind="nickname"></div>
<div ng-bind="username"></div>
<div ng-bind="realname"></div>
</div>
<script>
var app = angular.module("myApp", []);
// 三个控制器中,都要使用到一个数据:用户昵称~: nickname=董小姐
/*
为了方便多个控制器中的公共数据初始化
AngularJS提供了一个全局作用域对象$rootScope
AngularJS应用中,仅有一个全局作用域,其他所有的$scope作用域都是$rootScope的子元素
*/
/*
使用$rootScope,可以用于初始化全局变量和函数
但是存在一个问题: 因为控制器函数中可以直接使用$rootScope,就有可能会造成全局数据污染
规范:$rootScope一般和Angular模块的run()方法一起使用。来进行全局数据的初始化
*/
app.controller("c1", function($rootScope, $scope) {
$scope.nickname = "董小姐";
$scope.realname = "曾大神";
/*$rootScope.username = "刘帅哥";
$rootScope.userID = 12;*/
});
app.controller("c2", function($scope) {
$scope.nickname = "董小姐";
});
app.controller("c3", function($rootScope, $scope) {
$scope.nickname = "董小姐";
/*$rootScope.username = "尼神";*/
});
/* 专门用于初始化全局数据 */
app.run(function($rootScope) {
$rootScope.username = "大刘帅哥";
});
</script>
</body>
</html>