Angular 控制器之间的通信

<!DOCTYPE html>
<html lang="en" ng-app ='App'>
<head>
	<meta charset="UTF-8">
	<title>angular控制器通信</title>
</head>
<style>
	
</style>
<body>
	<div ng-controller='Ctrl1'>  
     	<input type="text" ng-model="test" />  <br>
     	<button ng-click="change()">输入内容后  第一步先点我</button>  
	</div>  
	<div ng-controller='Ctrl2'>  
		<button ng-click="add()">第二部点我</button>  
		<h2>控制器通信的值为: {{name}}</h2>
	</div>  
</body>
</html>
<script src="./src/angular.min.js"></script>
<script type="text/javascript">

	var app = angular.module('App',[]);
	//工厂模式  也可以用 service 可以理解成中间变量
	app.factory('Myfactory', function(){  
	    return {};  
	});  
	app.controller('Ctrl1',['$scope','Myfactory',function($scope,Myfactory){
	 	$scope.change = function() {  
	       Myfactory.name = $scope.test;   //在第一个控制器中为服务对象赋值  
	  	};  
	}]);
	app.controller('Ctrl2',['$scope','Myfactory',function($scope,Myfactory){
	  	$scope.add = function() {  
	       $scope.name = Myfactory.name; //将第一个控制器中为服务对象赋的值传给第二个控制器  
	  	};  
	 }]);
</script>

猜你喜欢

转载自blog.csdn.net/gyq04551/article/details/78347596