Communication croisée du contrôleur AngularJS
Un contrôleur AngularJS peut-il en appeler un autre ?
Oui, AngularJS fournit plusieurs mécanismes permettant aux contrôleurs de communiquer entre eux autre.
Partager un service
Une approche efficace consiste à partager une instance de service entre les contrôleurs :
angular.module('MyApp', []) .service('SomeDataService', function() { // Shared data or methods }) function FirstController(SomeDataService) { // Use the data service... } function SecondController(SomeDataService) { // Access the same data service instance }
Émettre des événements sur Scope
Une autre méthode consiste à émettre des événements sur le scope :
function FirstController($scope) { $scope.$on('someEvent', function(event, args) { // Listen for the event }); } function SecondController($scope) { $scope.$emit('someEvent', args); // Trigger the event }
Méthodes de communication supplémentaires
AngularJS prend également en charge :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!