2015-08-24 5 views
0
       setTimeout(function() { 
            $scope.$apply(function() { 
             $scope.Images = data; 
             //$scope.$apply(); 
            }); 
           }, 2000); 

           setInterval(function() { 
            $scope.Images = data; 
            $scope.$apply() 
           }, 500); 


           $timeout(function() { 
            $scope.Images = data; 
           }, 500); 
          }) 

Я пробовал все перечисленные выше опции в контроллере, но мое представление не обновляется при загрузке нового изображения.Просмотр не обновляется после обновления области

Здесь $ scope.Images является массивом, и после того, как изображение загружается в функцию, я получаю все изображения и назначаю все изображения в область $ scope.Images, Обновленные данные идут, $ scope.Images также обновляется, но не обновляется.

Строки в представлении:

<div ng-repeat="Image in Images" class="col-xs-6 col-sm-3 gallery-item"> 

       <a href={{Image.standard}} class="gallery-link" data-gallery> 
        <img ng-src={{Image.standard}} class="img-rounded" width="100%" height="262.22px" ng-cloak> 
       </a> 
      </div> 

Пожалуйста, помогите я застрял :(

+0

Можете ли вы сделать фрагмент плункера/скрипки/кода, воспроизводящий вашу проблему? Вы уверены, что массив изображений заполнен правильно? можете ли вы показать код получения данных? – ThibaudL

+0

Можете ли вы попробовать добавить двойные кавычки вокруг '{{}}', например 'ng-src =" {{Image.standard}} "'? После этого вы также можете попытаться переместить изображение на один уровень с '' для целей тестирования? – Icycool

+0

http://plnkr.co/edit/?p=preview – ThibaudL

ответ

0

рассмотреть вопрос о принятии переменной $ области действия с кодом, который выполняется на более поздний срок, за пределами углового; пример:

setInterval(
    (function ($scope) { 
     return function(){ 
      $scope.Images = data; 
      $scope.$apply() 
     } 
    })($scope), 500); 

Это создает функцию с параметром $ объемом, что позволяет инъекцию переменных $ области видимости в любое время.

Я знаю, что сначала это выглядит странно, но эта конструкция оказалась полезной в таких ситуациях.

Смежные вопросы