el-table-column 中的 el-image 无法正常显示图片

文章描述了在使用ElementUI的el-table-column展示图片时遇到的问题,即el-image组件不能从prop绑定的avatar属性中正确加载图片。原因是el-image的src属性无法直接获取el-table-column的prop值。解决方法是通过在模板中使用默认插槽(scope.row.avatar)来获取当前行的数据并赋值给el-image的src属性,从而成功显示图片。

1 问题描述

el-table-column 中通过 el-image 显示图片时,el-image 不能加载图片,但将 src 换为静态属性且赋值一个图片 URL 后发现可以正常显示图片。

<el-table-column prop="avatar" label="头像" align="center" >
	<el-image :src="avatar" fit="contain" class="avatar-container">
    	<template #error>
        	<div class="image-slot">
            	<el-icon><Picture /></el-icon>
            </div>
        </el-image>
    </template>
</el-table-column>

2 引发原因

:src="avatar" 不能读取 avatar 中存入的图片 URL。即 el-image 中的属性不能直接获取 el-table-columnprop 中绑定的值。

3 解决方法

通过 <template #default="scope"></template> 添加一个插槽获取当前行的数据,然后赋值给 el-iamgesrc 属性。(:src="scope.row.avatar"

<el-table-column prop="avatar" label="头像" align="center" >
      <template #default="scope">
        <el-image :src="scope.row.avatar" fit="contain" class="avatar-container">
          <template #error>
            <div class="image-slot">
              <el-icon><Picture /></el-icon>
            </div>
          </template>
        </el-image>
      </template>
    </el-table-column>

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Vesuvius688

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值