我在运行函数中有我的通知侦听器。收到通知后,我需要使用通知对象中存在的参数更新$scope中存在的对象。
angular.module('app', ['ionic', 'chatsCtrl'])
.run(function($state, $ionicPlatform) {
window.FirebasePlugin.onNotificationOpen(function(notification) {
// Need to append this notification.parameter to a scope variable present in a controller
}
}
.controller('chatsCtrl', function($scope) {
// $scope.chats
});
我该怎么做呢?我不想使用$rootScope对象,因为$scope.chat对象会变得非常重。
谢谢
你不能在运行块中调用scope
变量/函数。 由于您不想使用rootscope
我的建议是创建一个服务并从运行块为该服务中的特定方法赋值。然后使用相同的服务从控制器获取该值。
angular.module('app', ['ionic', 'chatsCtrl'])
.run(function($state, $ionicPlatform) {
window.FirebasePlugin.onNotificationOpen(function(notification) {
sampleService.setData(notification)
}
}
.controller('chatsCtrl', function($scope,sampleService) {
$scope.chats = sampleService.getData()
});
.factory('sampleService', function() {
var data;
return {
getData : function(){ return data},
setData: function(param){ data = param},
}
});