图像图标数组有时很少加载

问题描述 投票:0回答:1

我只是使用下面给出的代码在屏幕上加载一些应用程序图标。它始终工作正常,但有时很少(1/20 次)图标单独未加载,如下图所示,但应用程序名称显示在图标下方(我未在此处显示)。没有任何错误的痕迹。

我认为如果有一些错误,至少会加载没有图像的图标(单独的框)。但就我而言,情况有所不同,因为实际的根本原因或错误是不可追踪的,所以我没有其他办法,只能在这里使用一些重试逻辑来重新加载图标。我该怎么做?请提供更好的想法。任何示例代码都会有帮助。

  <div class="apps__list" v-for="app in AppData.appList" v-bind:key="app.app_name">
      <span>
          <img id="app_icons" v-bind:src="AppData.getAppIcon(app)" />
       </span>
       <div class="text">
          <span class="text text--ellipsis">{{ app.app_name }}</span>
       </div>
 </div>

 getAppIcon(app) {
  let image="";
  let assetsURL = "/images/xhdpi_2x/";
  return image = assetsURL +"/" + app.icon_name + ".png";
 }
vue.js vuejs2 vuejs3 v-for
1个回答
0
投票

嗯,看起来很奇怪。尝试将

span
替换为
div
或将其完全删除。然后将
width
/
height
添加到您的图像中。

您还可以设置默认图像,以防您的代码无法获取所需的图像。

img {
 display: block; 
 width: 49px; 
 height: 49px;
 border: 1px solid black; 
 position: relative; 
 overflow: hidden;

 &:: before {
  content: attr(alt);
  position: absolute;
  top: 0; 
  left: 0;
  background-image: url('../path-to-the-default-image.jpg'); 
  width: 100%; 
  height: 100%;
  overflow: hidden; 
  white-space: nowrap;
  text-overflow: ellipsis;
 }
}

我知道这并不能解释现在发生的事情,但我希望这将有助于跟踪问题。

© www.soinside.com 2019 - 2024. All rights reserved.