Angenommen, ich habe zwei AngularJS-Module, nämlich M1 und M2, möchte ich die Funktion implementieren, dass, wenn eine Variable in M1 geändert wird, eine Funktion in M2 aufgerufen werden kann. Mein Code ist wie folgt, aber es funktioniert nicht richtig. Kann jemand helfen zu sehen, was falsch ist? Vielen Dank.AngularJS-Kommunikation zwischen Modulen
(function() {
"use strict";
angular.module("M1", []);
})();
angular.module("M1")
.controller("M1-controller", ['$rootScope', function ($rootScope) {
var vm = this;
vm.test = "";
vm.clickFunction = function() {
vm.test = "abc";
$rootScope.$broadcast('value-changed', vm.test);
};
}])
(function() {
"use strict";
angular.module("M2", []);
})();
angular.module("M2")
.controller("M2-controller", ['$rootScope', function ($rootScope) {
var vm = this;
$rootScope.$on('value-changed', function (event, args) {
alert(args);
});
}])