angularJS--多个控制器之间的数据共享
2017-05-15 16:26
465 查看
为了在控制器之间共享数据,需要在服务中添加一个用来储存用户名的方法。记住,服务在
应用的生命周期内是单例模式的,因此可以将用户名安全地储存在其中。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>12-angularjs的多个控制器数据共享</title>
<script src="../js/angularjs.js"></script>
<script src="../js/index12.js"></script>
</head>
<body>
<!-- angularjs的数据绑定,双向绑定,M,V,c之间的绑定 -->
<div ng-app="myApp">
<div ng-controller= "firstController">
<input type="text" ng-model="person.name" value="" />
firstData--{{person.name}}
</div>
<div ng-controller="secondController">
<input type="text" value="" />
secondData--{{person.name}}
<div ng-controller= "firstController">
<input type="text" ng-model="Data.message" value="" />
firstData--{{Data.message}}
</div>
<div ng-controller="secondController">
<input type="text" value="" />
secondData--{{Data.message}}
</div>
</div>
</div>
</body>
</html>
下面是控制器的写法:
var myApp = angular.module('myApp', []);
myApp.factory('Data', function(){
return {message:'Hello world1'};
});
myApp.controller('firstController', function($scope,Data){
$scope.person = {
name: "Hello word2"
};
$scope.Data = Data;
});
myApp.controller('secondController', function($scope,Data){
$scope.person = $scope.$$prevSibling.person;//基本类型不能变的,只有对象才能引用
$scope.Data = Data;
});
应用的生命周期内是单例模式的,因此可以将用户名安全地储存在其中。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>12-angularjs的多个控制器数据共享</title>
<script src="../js/angularjs.js"></script>
<script src="../js/index12.js"></script>
</head>
<body>
<!-- angularjs的数据绑定,双向绑定,M,V,c之间的绑定 -->
<div ng-app="myApp">
<div ng-controller= "firstController">
<input type="text" ng-model="person.name" value="" />
firstData--{{person.name}}
</div>
<div ng-controller="secondController">
<input type="text" value="" />
secondData--{{person.name}}
<div ng-controller= "firstController">
<input type="text" ng-model="Data.message" value="" />
firstData--{{Data.message}}
</div>
<div ng-controller="secondController">
<input type="text" value="" />
secondData--{{Data.message}}
</div>
</div>
</div>
</body>
</html>
下面是控制器的写法:
var myApp = angular.module('myApp', []);
myApp.factory('Data', function(){
return {message:'Hello world1'};
});
myApp.controller('firstController', function($scope,Data){
$scope.person = {
name: "Hello word2"
};
$scope.Data = Data;
});
myApp.controller('secondController', function($scope,Data){
$scope.person = $scope.$$prevSibling.person;//基本类型不能变的,只有对象才能引用
$scope.Data = Data;
});
相关文章推荐
- angularJS--多个控制器之间的数据共享
- AngularJS控制器之间的数据共享及通信详解
- angularJS--多个控制器之间的数据共享
- AngularJS控制器之间的数据共享及通信详解
- angularJS--多个控制器之间的数据共享
- angularjs 利用 service + $broadcast 在多个controllers 之间共享数据
- 让AngularJS的controllers之间共享数据
- angularJS平行控制器间共享数据
- Angular 控制器之间的数据共享与通信
- AngularJS实现controller控制器间共享数据的方法示例
- angularjs中多个控制器中共享数据
- angularJs在多个控制器中共享服务数据
- AngularJS(三)——在多个AngularJS controller之间共享数据
- Android 用sharepreference在各个程序之间共享数据
- WinCE5.0移动平台开发笔记(Appdomain之间共享数据变量)
- Android 开发中各Activity之间数据共享
- 关于java不同类之间的数据共享
- windows笔记-使用内存映射文件在进程之间共享数据
- Android 应用程序之间数据共享—ContentResolver
- Android 应用程序之间数据共享—ContentResolver