Vue 3动态图像

Vue 3 dynamic image

我正在使用 v-for 在卡片上加载数据。图片没有显示,不知道为什么。 我虽然 :src = "'item.img'":src = "{{item.img}}" 会工作,但都没有工作。

这是我的代码

 <div v-for="(item, index) in basicData" :key="index">
      <transition class="slide">
        <div v-if="index >= start && index < end" class="card">
          <div class="card-body">
            <h5 class="card-title">{{item.title}}</h5>
            <img
              :src="'item.img'"
              class="card-img-top"
              :alt="'item.img'"
              style="margin: 20px 5px"
            />
            <p class="card-text">Some quick example text.</p>
          </div>
        </div>
      </transition>

这是屏幕截图

当我硬编码时src="../assets/featured/pizzaOne.jpeg" 图像出现。

您可以创建方法或计算 属性:

methods() {
  getImage(imagePath) {
    return require(imagePath);
  }
}

然后在模板中调用该方法:

<img
  :src="getImage(item.img)"
  class="card-img-top"
  :alt="item.img"
  style="margin: 20px 5px"
/>