Obecnie tworzę nową właściwość w $ rootScope i ustawiając jej wartość w jednym module.
$rootScope.test = 123;
Próbuję później odwołać się do tej wartości w funkcji serwisowej.
.factory("testFactory", function ($location, $http, $rootScope) {
/* .... */
return {
testFunction : function(){
console.log($rootScope);
console.log($rootScope.test);
},
/* .... */
Kiedy przeglądam wyjścia konsoli w Chrome, widzę, że wartość testu jest ustawiony prawidłowo w obiekcie $ rootScope, ale nie jestem w stanie odwołać się za pomocą składni $ rootScope.test. $ rooScope.test po prostu wraca undefined.
Czy istnieje jakiś powód, dla którego nie można podać wartości właściwości $ rootScope w usługach? Czy próbuję odzyskać tę wartość nieprawidłowo?
UPDATE - Stworzyłem Plunker który pokazuje problem, który używam do. http://plnkr.co/edit/ePEiYh
Jak o próbie Fabryce umiejscowionej '("testFactory"[ "$ lokalizację", "$ http", $ rootScope ", funkcja ($ location, $ http, $ rootScope) {...}]);' – tymeJV
Upewnij się, że robisz '$ rootScope.test = 123;' zanim zrobisz 'testFactory.testFunction(); – AlwaysALearner
W jaki sposób to rozwiązałeś? Przebiegam dokładnie ten sam problem.W konsoli widzę atrybut w pierwszym pliku console.log, ale w drugim przy próbie wydrukowania samego atrybutu jest on niezdefiniowany –