b_e_m
@b_e_m
Front-End Dev

Почему все resovle (ui-router) срабатывают при старте аппликейшна?

В идеале насоклько я понимаю, резолв должен срабатывать только при переходе на определенный стейт, к которому соответственно этот резолв и привязан.
у меня галпом все собирается в один файл, и при инициализации срабатывает, потом при переходе на другой стэйт, срабатывает его резолв еще раз. Получается запросы отправляются по два раза.
Для примера скинул стэйт
.state('events.feed', {
				url: '/feed',
				templateUrl: "/views/events/feed.html",
				controller: "eventsFeedController",
				resolve: {
					position: function($geolocation, appRestAPI) {
						console.log('Call POS from FEED');
						var coords = [];
						return $geolocation.getCurrentPosition().then(function(position) {
							coords[0] = position.coords.latitude;
							coords[1] = position.coords.longitude;
							return coords;
						}).catch(function(err){
							coords[0] = appRestAPI.testCoords.lat;
							coords[1] = appRestAPI.testCoords.lng;
							return coords;
						})
					},
					events: function(eventsService, position) {
						debugger;
						console.log('Call from FEED');
						return eventsService.getEvents(position).then(function(data) {
							return data.data.events;
						})
					}
				}				
			})
  • Вопрос задан
  • 169 просмотров
Решения вопроса 1
b_e_m
@b_e_m Автор вопроса
Front-End Dev
нашёл причину, на run'e главного модуля был редирект на стэйт events.feed, который срабатывал и грузил резолв.
Потом сразу же происходил не заметный редирект на главную.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы