使用Parse.com和JavaScript SDK。
以下代码运行查询,该查询包含多个结果。然后迭代这些并显示。
profileURL: Badgeresults[i].get('SentTo').get('pic'),
返回一张个人资料图片,我只想展示一次,目前因为我在
下面了 `_.each(Badges, function (item) {`
对于返回的每个对象,它都会重复。
我在哪里以及如何添加一行只显示一次个人资料图片,我知道它必须在_.each(Badges, function (item) {
之外,但我希望它出现在这些结果的顶部。我认为我需要使用类似`$('#profile_pic')的东西.attr('src',imageURLs [0]);
显示它?`
-
query.find({
success: function(Badgeresults) {
// If the query is successful, store each image URL in an array of image URL's
var Badges = [];
for (var i = 0; i < Badgeresults.length; i++) {
Badges.push({
imageURL: Badgeresults[i].get('Global_Badges_img'),
categorySelected: Badgeresults[i].get('category'),
badgeNameSelected: Badgeresults[i].get('BadgeName'),
AwardedBy: Badgeresults[i].get('uploadedBy').get('username'),
AwardedTo: Badgeresults[i].get('SentTo').get('username'),
profileURL: Badgeresults[i].get('SentTo').get('pic'),
comment: Badgeresults[i].get('Comment'),
});
}
_.each(Badges, function (item) {
var wrapper = $('<div></div>');
//$('#profile_pic').append('<img class="images BadgeImgOutline responsive-image" src="' + item.profileURL + '" />');
//wrapper.append('<img class="images responsive-image BadgeImgOutline" src="' + item.profileURL + '" />'+ '<br>');
wrapper.append('<img class="images responsive-image BadgeImgOutline" src="' + item.imageURL + '" />'+ '<br>');
wrapper.append('<div class="tag categorySelectedlabel">' + item.categorySelected + '</div>' + '<br>');
wrapper.append('<div class="tag badgeNameSelected">' + item.badgeNameSelected + '</div>' + '<br>');
wrapper.append('<div class="tag awardedbylabel">' + item.AwardedBy + '</div>' + '<br>');
wrapper.append('<div class="tag senttolabel">' + item.AwardedTo + '</div>' + '<br>');
wrapper.append('<div class="item fui-chat">' + ' Reason: ' + item.comment + '</div>' + '<br>');
$('#containerFriendsBadges').append(wrapper);
答案 0 :(得分:0)
“仅显示个人资料图片” - 这是否意味着Badgeresults(或您的徽章)可以多次包含相同的图片(网址)?
如果是这样的话 - 我会在将它们放入徽章之前写一个重复字符串的检查,并在Badges.push({..
之前放置它(检查)