2015-10-13 3 views
0

У меня есть два контроллера контроллера A и контроллер B. контроллер A имеет объект $ scope.operation = {}; который содержит детали json.Использование объекта контроллера в другом контроллере в angularjs

В контроллере BI хотите сравнить детали этого JSon объекта, а затем запустить функцию в контроллере B .Как для достижения this..Thanks

+0

Вы можете использовать $ rootScope или Factory для связи между контроллером –

+0

Есть ли вид B вложен в вид A? Откуда берутся данные? –

ответ

3

Используйте заводскую/сервис для хранения operations массив всякий раз, когда значение изменения в контроллере ControllerA обновляют значения в службе.

myApp.factory('myService', [function() { 
     var operations = {}; 
     return { 
      getOperations: function() { 
       return operations 
      }, 

      setOperations: function(op) { 
       operations = op; 
      }, 
     } 
    }]) 
    .controller('ControllerA', [function($scope, myService) { 
     $scope.operations = {}; 
     $scope.$watch(function() { 
      return $scope.operations; 
     }, function() { 
      myService.setOperations($scope.operations); 
     }); 
    }]) 
    .controller('ControllerB', [function($scope, myService) { 
     $scope.operations = myService.getOperations(); 
    }]); 
Смежные вопросы