Birisi bir AngularJS denetleyicisinin yaşam döngüsünün ne olduğunu açıklığa kavuşturabilir mi?
- Denetleyici tek mi yoksa talep üzerine mi yaratılıyor / yok ediliyor mu?
- İkincisi, denetleyicinin yaratılmasını / yok edilmesini ne tetikler?
Aşağıdaki örneği düşünün:
var demoApp = angular.module('demo')
.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/home', {templateUrl: '/home.html', controller: 'HomeCtrl'})
.when('/users',{templateUrl: '/users.html', controller: 'UsersCtrl'})
.when('/users/:userId', {templateUrl: '/userEditor.html', controller: 'UserEditorCtrl'});
});
demoApp.controller('UserEditorCtrl', function($scope, $routeParams, UserResource) {
$scope.user = UserResource.get({id: $routeParams.userId});
});
Örneğin:
Yukarıdaki örnekte, öğesine gittiğimde /users/1
, kullanıcı 1 yüklenir ve $scope
.
Sonra, şuraya gittiğimde /users/2
, kullanıcı 2 yüklenir. Aynı UserEditorCtrl
yeniden kullanım örneği mi yoksa yeni bir örnek mi oluşturuldu?
- Bu yeni bir örnekse, ilk örneğin yok edilmesini tetikleyen nedir?
- Yeniden kullanılırsa, bu nasıl çalışır? (yani, verileri yükleme yöntemi, denetleyicinin oluşturulmasında çalışıyor gibi görünür)