<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="bootstrap.min.css">
<script src="jquery.min.js"></script>
<script src="angular.min.js"></script>
<script src="bootstrap.min.js"></script>
<script type="text/javascript">
var myapp = angular.module('myapp', []);
myapp.controller('myController', function($scope, myService) {
$scope.send =function() {
myService.getData();
}
$scope.send2 =function() {
myService.getData();
}
});
myapp.factory('myService', function() {
tmp = {
arrays : [1,2,3,4],
getData : function() {
tmp.arrays.pop();
console.log(tmp.arrays);
}
};
return tmp;
});
</script>
<style type="text/css">
</style>
</head>
<body ng-app="myapp">
<div ng-controller="myController">
<button class="btn btn-primary" ng-click="send()">Send</button>
<button class="btn btn-primary" ng-click="send2()">Send</button>
</div>
</body>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="bootstrap.min.css">
<script src="jquery.min.js"></script>
<script src="angular.min.js"></script>
<script src="bootstrap.min.js"></script>
<script type="text/javascript">
var myapp = angular.module('myapp', []);
myapp.controller('myController', function($scope, myService) {
$scope.send =function() {
myService.getData();
}
$scope.send2 =function() {
myService.getData();
}
});
myapp.factory('myService', function() {
tmp = {
arrays : [1,2,3,4],
getData : function() {
tmp.arrays.pop();
console.log(tmp.arrays);
}
};
return tmp;
});
</script>
<style type="text/css">
</style>
</head>
<body ng-app="myapp">
<div ng-controller="myController">
<button class="btn btn-primary" ng-click="send()">Send</button>
<button class="btn btn-primary" ng-click="send2()">Send</button>
</div>
</body>
</html>
左右依次循环点击按钮,结果
[1, 2, 3]
[1, 2]
[1]
[]
可见,service是单例,共享数据.