当我在SelectNotificationCtlr中调用getNotification时,我试图在控制器'Notification'中调用该函数。但是在运行时,我得到一个错误,指出$ rootScope未在console.log(“log”);下面的行上定义。我已经尝试将$ rootScope作为参数传递给我的getNotification函数但仍然收到相同的错误。
请参阅下面的代码,我们非常感谢任何建议或帮助。
app.js
selectNotification.controller('selectNotificationCtlr', ['$scope', '$rootScope', 'notificationsService',
function($scope, $http, notificationsService, notificationService, $rootScope) {
$scope.getNotification = function() {
var id = $scope.selectedNotification;
notificationData = notificationsService.getNotifications();
console.log(notificationData);
console.log("log");
$rootScope.$emit("call", {});
}
}
]);
selectNotification.controller('Notification', ['$scope', '$rootScope',
function($scope, $rootScope) {
$rootScope.$on("call", function() {
$scope.parent(notificationService);
});
$scope.parent = function() {
console.log("log");
}
}
]);
亲切的问候
CB
答案 0 :(得分:3)
您的控制器应具有正确顺序的依赖关系,
selectNotification.controller('selectNotificationCtlr', ['$scope', '$rootScope', 'notificationsService',
function($scope, $rootScope, notificationsService) {