В настоящее время я создаю новое свойство в $ rootScope и устанавливаю его значение в одном модуле.AngularJS - значение свойства root root не определено в сервисе
$rootScope.test = 123;
Затем я пытаюсь ссылаться на это значение позже в сервисной функции.
.factory("testFactory", function ($location, $http, $rootScope) {
/* .... */
return {
testFunction : function(){
console.log($rootScope);
console.log($rootScope.test);
},
/* .... */
Когда я осматриваю выход консоли в Chrome, я могу видеть, что значение теста быть установлен должным образом в объекте $ rootScope, но я не могу ссылаться, используя синтаксис $ rootScope.test. $ rooScope.test просто возвращает undefined.
Есть ли причина, по которой вы не можете ссылаться на значения свойств $ rootScope в сервисах? Или я пытаюсь получить это значение ненадлежащим образом?
UPDATE - я создал Plunker, демонстрирующий вопрос, который я бег в. http://plnkr.co/edit/ePEiYh
Как о попытке '.factory ("testFactory", [ "$ местоположение", "$ HTTP", $ rootScope ", функция ($ location, $ http, $ rootScope) {...}]);' – tymeJV
Убедитесь, что вы выполняете '$ rootScope.test = 123;' перед тем, как вы выполните 'testFactory.testFunction();' – AlwaysALearner
Как вы это решили? Я сталкиваюсь с одной и той же проблемой. В консоли я вижу атрибут в первом console.log, но во втором при попытке распечатать атрибут сам по себе не указан –