Я пытаюсь сделать следующее, запрос к 2 apis.
Первая консультация состоит в том, чтобы собрать данные о местности, указанной в городе, я справляюсь с обещаниями.
Второй запрос: чтобы получить из этих данных еще 7 данных с учетом долготы, широты и даты, я сделал это с помощью IIFE, потому что я пытался сделать это с помощью $ resource, но больше, чем пытался, я не мог решить проблемы с синтаксическим анализом. из JSON.
Вот код, который делает запрос к API для получения данных и обновления прогноза модели, их 2, один для изменения местоположения, а другой для непосредственного вызова функции, которая доставляет данные.
$scope.setLocation = function(loc) {
$scope.location = loc;
$scope.getForecastByLocation();
};
$scope.getForecastByLocation = function(p) {
if ($scope.location == '' || $scope.location == undefined) {
$scope.hasState = 'has-warning';
$scope.message = 'Please provide a location';
}
$scope.hasState = 'has-success';
console.log("LOCACION==",$scope.location);
$scope.forecast = openWeatherMap.queryForecastDaily({
location: $scope.location
});
$scope.forecast.$promise.then(function(data){
for(var i=0;i
Это часть кода, которая выполняет изменение местоположения setLocation (item) и в то же время делает запрос к API, он выполняется хорошо, когда я щелкаю по нему из
Listado de ciudades importantes
{{message}}
без каких-либо проблем, но теперь приходит следующее, у меня также есть боковое меню со списком городов, это, я назначаю событие setLocation (post), аналогичное предыдущему, оно работает нормально, в журналах кажется, что оно делает запрос API, когда я показываю данные, которые получают обещание в коде js, который я положил выше, он показывает мне нормально (img 3), однако $ scope.forecast не обновляется, здесь часть кода, которая находится в img2 и показывает результат консультации API.
FORECAST== {{forecast}}
{{forecast.city.name | placeholder:'?'}}, {{forecast.city.country | isoCountry}}
Lon: {{forecast.city.coord.lon | number:2}} Lat: {{forecast.city.coord.lat | number:2}} Population: {{forecast.city.population | number:0}}
// Опции бокового меню городов
Вот несколько картинок. Первое, что я хочу сделать в боковом меню, это списки городов, которые нужно сделать. щелкните и обновите модель $ scope.forecast в журналах, используя боковое меню или из того же интерфейса, где все города находятся на экране, результат одинаковый, заголовки одинаковые, но При использовании бокового меню обновление модели $ scope.forecast в html не выполняется, даже при печати данных, которые появляются, когда они выполняют запросы, которые существуют.
// При нажатии на боковое меню Не обновляется // При нажатии на index.html # кнопки прогноза Если update
** // Журналы одинаковы для img 1 и img2 **
Я знаю, что Это что-то простое, однако я какое-то время не обнаружил проблемы, может быть, я что-то забыл Что может происходить?
--- Обновление index.html ---
........
.......
.............
1 ответ
Расследуя в твоем коде я понял, что scope, который у тебя есть в боковом меню различный против остального звука:
Боковое меню имеет id: 3
, в то время как в твоем меню, где ты ищешь, и кнопки, которые у тебя есть наверху, имеют id: 4
.
Проверяя код, я взял свободу помещения переменной, о которой ты упоминаешь:
Я напечатал forecast, чтобы видеть, что он имел:
</a>
</li>
<li>
<a href="#/forecast"><img class="img-responsive" src="img/inicio/clima.png" alt="">
<b><Ciudades/b>
</a>
<ul class="dropbox_citys">
{{forecast}}
<li ng-repeat="post in exampleLocations | orderBy:'name':true >
<a ng-click="setLocation(post)">{{post}}</a>
</li>
</ul>
</li>
<li>
<a href="/app/partials/mapa.html"><img class="img-responsive" src="img/inicio/clima.png"
<b>Mapa</b>
Действительно да, изменись, когда я даю ему искать в твоем меню, но изменись в том, который стороны меню.
Тогда я прибыл в заключение, что после того, как имею один ng-view
, с приложением снаружи, они ведут себя различным способом $scope
.
Решение, которое приходит в голову мне в этих моментах, состоит в том, чтобы ты направил глобальный "forecast", немного как $rootScope
.
2
ответ дан ArtEze
24.11.2019, 12:41
Ссылка
-
1
Спасибо за время возьмите, что-то схвати и # 237; pens и # 233; что с ng-view вел себя различно.
– Kevin AB
09.11.2016, 20:29
Теги
Похожие вопросы