需要幫助瞭解下面的代碼是如何工作的。角度服務和範圍 - 爲什麼價值在其他範圍內變化?
第一負載後在div元件以及所述輸入元件中顯示的值是「用戶名」,如所預期。
然而,爲什麼在第一div元素值獲得當我修改考慮到兩個控制器具有不同的和相互排斥的範圍變量??在輸入元素的值進行修改。
我相信這是與rootScope進行連接withed,但我不知道怎麼連點。
<html ng-app='myApp'>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.js"></script>
<script type="text/javascript">
var app = angular.module('myApp', []);
app.factory('userService',['$timeout', function($timeout){
var user = {}
$timeout(function(){
user.name = 'Username';
},5000);
return user;
}])
app.controller('c1', ['$scope', 'userService', function($scope, userService){
$scope.user = userService;
}])
app.controller('c2', ['$scope', 'userService', function($scope, userService){
$scope.user = userService;
}])
</script>
<body>
<div ng-controller="c1"><h1>{{user.name}}</h1></div>
<div ng-controller="c2"><input type="text" ng-model="user.name"/></div>
</body>
</html>