Here, yazar aynı için
the $scope object used by the two controllers are not the same $scope object
Snippet'ini bahseder:
Şimdi yukarıdaki koda biraz değişiklik düşünün.<body ng-app="myapp">
<div ng-controller="myController1">
<div>{{data.theVar}}</div>
<div>{{data.common}}</div>
<div ng-controller="myController2">
<div>{{data.theVar}}</div>
<div>{{data.common}}</div>
<div>{{temp}}</div>
<div>{{newTemp}}</div>
</div>
</div>
<script>
var module = angular.module("myapp", []);
var myController1 = module.controller("myController1", function($scope) {
$scope.data = {
theVar : "Value One",
common : "common Value"
};
$scope.temp = "John Wick 2 is going to be released soon";
});
var myController2 = module.controller("myController2", function($scope) {
$scope.data = {
theVar : "Value Two"
};
$scope.newTemp = $scope.temp;
console.log("");
});
</script>
</body>
controller2 karşılık gelen görüntü
controller1 için iç görünüm taşınmıştır. controller2 içindeki kod parçası için ,$scope.newTemp = $scope.temp;
$ kapsam tek ve aynı nesne üzerinde vurgulanan musunuz?
Evet, AngularJS bunu nasıl biliyor?
, controller2 içinde $scope.temp
öyleyse $scope.newTemp
tanımsız ve olacağını aynı olsaydı?
Benim için onlar o/p yukarıda programı dikkate alındığında, aynı değildir. Aşağıya bakın:
Ama sonra olmak ikisi de çıkar neden olarak çapraşık bir & ben hata ayıklama aynı, $scope.temp
değerini erişebilir angularjs yapar nasıl
controller2'deki controller1'den mi?
Lütfen açıklayınız?
Son olarak,
iki kontrolörleri kullanılan$scope
aynı olmadığını doğrudur Taşıyamazsınız
Neden Google Chrome hata ayıklayıcı göstergesini $ controller2 kapsamındaki özellikler ($ controller of controller1 ile ilgili) göstermiyor? –
Yapıyor, ama içinde '__proto__' –
Martijn: Oh, evet. Bu temel nokta farketmedi. Peki, aynı şey için teşekkür ederim. –