liujiaxin 3 minggu lalu
induk
melakukan
32f2a8c572
1 mengubah file dengan 32 tambahan dan 19 penghapusan
  1. 32 19
      pages_course/living.vue

+ 32 - 19
pages_course/living.vue

@@ -1071,25 +1071,38 @@
 			formattedLikeCount() {
 				return this.formatNumber(this.liveViewData.like || 0);
 			},
-			filteredViewers() {
-				// 只取前3个观众
-				// const safeLiveViewers = Array.isArray(this.liveViewersData) ? this.liveViewersData.slice(0, 3) : [];
-				const safeLiveViewers = []
-				console.log("头像11到底是什么",this.fakeAvatar)
-				// 如果有假头像数组,用假头像替换原有的头像
-				if (this.fakeAvatar && this.fakeAvatar.length > 0) {
-					return safeLiveViewers.map((item, index) => {
-						// 为每个显示的头像从fakeAvatar中随机选择一个
-						const randomIndex = Math.floor(Math.random() * this.fakeAvatar.length);
-						return {
-							...item,
-							avatar: this.fakeAvatar[randomIndex] // 替换为假头像
-						};
-					});
-				}
-
-				return safeLiveViewers;
-			},
+			 filteredViewers() {
+			    // 获取3个随机假头像,而不是显示真实观众
+			    const avatarCount = 3; // 需要显示的假头像数量
+			    
+			    // 如果fakeAvatar数组为空或不存在,返回空数组
+			    if (!this.fakeAvatar || !Array.isArray(this.fakeAvatar) || this.fakeAvatar.length === 0) {
+			      return [];
+			    }
+			    
+			    // 从fakeAvatar中随机选择3个不同的头像
+			    const randomAvatars = [];
+			    const availableAvatars = [...this.fakeAvatar]; // 创建副本避免修改原数组
+			    
+			    // 确保有足够的头像可选
+			    if (availableAvatars.length < avatarCount) {
+			      // 如果头像数量不足,可以重复使用
+			      for (let i = 0; i < avatarCount; i++) {
+			        const randomIndex = Math.floor(Math.random() * availableAvatars.length);
+			        randomAvatars.push(availableAvatars[randomIndex]);
+			      }
+			    } else {
+			      // 随机选择不重复的头像
+			      for (let i = 0; i < avatarCount; i++) {
+			        const randomIndex = Math.floor(Math.random() * availableAvatars.length);
+			        randomAvatars.push(availableAvatars[randomIndex]);
+			        // availableAvatars.splice(randomIndex, 1); // 移除已选的头像,避免重复
+			      }
+			    }
+			    
+			    console.log("随机选择的头像:", randomAvatars);
+			    return randomAvatars;
+			  },
 			isCurrentUserWon() {
 				if (!Array.isArray(this.prizeInfo) || !this.userInfo?.userId) {
 					return false;