2017-02-16 61 views
0

我試圖使用ng-repeat的結果調用ng-init中的函數,但唯一顯示的圖像是傳遞給作用域的最後一個圖像變量。

任何提示或建議,如果我這樣做是否正確?

模板

<ion-item ng-repeat="feed in feeds" ng-if=fbfeed.message ng-init='addAttachment(feed.id)'> 
    <div class="list card"> 
     <div class="item item-body"> 
      <img src="{{attachment.media.image.src}}"> 
     </div> 
    </div> 
</ion-item> 

控制器

$scope.addAttachment = function (postId) { 
    var attachmentData = MediaManager.getAttachments(postId); 
     attachmentData.then(function(result) { 
     if (result.data.length) { 
      $scope.attachment = result.data[0]; 
     } 
    }); 
}; 

回答

0

你需要的所有對象添加attachment場。所以將其添加到對象feed

您可以傳遞Feed ID並在函數中分配相應的圖像。

HTML

<ion-item ng-repeat="feed in feeds" ng-if=fbfeed.message ng-init='addAttachment(feed)'> 
    <div class="list card"> 
     <div class="item item-body"> 
      <img src="{{feed.attachment.media.image.src}}"> 
     </div> 
    </div> 
</ion-item> 

控制器:

$scope.addAttachment = function (feed) { 
    var attachmentData = MediaManager.getAttachments(feed.postId); 
     attachmentData.then(function(result) { 
     if (result.data.length) { 
      feed.attachment = result.data[0]; 
     } 
    }); 
}; 
+0

大公司工作的感謝,我不知道它可以工作的方式。 – user799451