angularJS--多个控制器之间的数据共享

为了在控制器之间共享数据,需要在服务中添加一个用来储存用户名的方法。记住,服务在
应用的生命周期内是单例模式的,因此可以将用户名安全地储存在其中。

<!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:'小平果'};

});

myApp.controller('firstController',  function($scope,Data){
	$scope.person = {
		name: "肖果平"
	};

	$scope.Data = Data;
});

myApp.controller('secondController',  function($scope,Data){
	$scope.person = $scope.$$prevSibling.person;//基本类型不能变的,只有对象才能引用
	$scope.Data = Data;
});

  

posted @ 2015-08-02 21:25  小平果  阅读(489)  评论(0编辑  收藏  举报