在el-table-column中的自定义div中引入背景图找不到,报404而img标签可以引入
时间: 2024-04-21 18:25:42 浏览: 17
在el-table-column中的自定义 div 中引入背景图报404错误,可能是因为图片路径不正确或者图片资源未正确引入。请检查一下图片路径是否正确,如果是相对路径,请确保图片资源与组件文件在同一目录下或者在正确的相对路径下。如果是绝对路径,请确保服务器上存在该图片资源。另外,你可以尝试使用开发者工具在 Network(网络)选项卡下查看该图片资源是否成功加载,以确定具体问题所在。如果 img 标签可以引入,可能是因为图片路径写法不同导致的问题。
相关问题
vue2在el-table中v-html 解析后中找到文本中带有img 标签
在 `el-table` 中使用 `v-html` 渲染后,可以通过在 `cell-class-name` 属性中自定义样式,然后通过 `render` 函数获取当前单元格中的 `img` 标签,并进行判断。
具体实现步骤如下:
1. 在 `el-table` 中使用 `cell-class-name` 属性,自定义单元格的样式类名。
2. 在 `render` 函数中,获取当前单元格中的 `img` 标签,并进行判断。
以下是一个示例代码:
```html
<template>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="content" label="内容" :cell-class-name="getCellClassName">
</el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{
content: '<p>这是一段包含<img src="xxx" alt="图片描述">图片的文本</p>'
}
]
}
},
methods: {
getCellClassName({ row, column, rowIndex, columnIndex }) {
return 'my-cell-class'
}
},
render: function(h, { row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
const htmlStr = row[column.property]
const div = document.createElement('div')
div.innerHTML = htmlStr
const imgList = div.querySelectorAll('img')
imgList.forEach(img => {
if (img.alt === '图片描述') {
// 图片描述为"图片描述"的处理逻辑
}
})
return h('div', htmlStr)
}
}
}
</script>
<style>
.my-cell-class {
padding: 0 !important; /* 去除单元格内边距 */
}
.my-cell-class > div {
padding: 10px; /* 设置单元格内边距 */
}
</style>
```
在上面的代码中,我们在 `getCellClassName` 方法中返回了自定义的样式类名 `my-cell-class`,并在样式中设置了 `padding: 0 !important` 去除单元格内边距,然后在 `render` 函数中获取当前单元格的 `htmlStr`,并使用 `querySelectorAll` 方法获取其中的 `img` 标签,进行判断。最后,使用 `h` 函数生成一个新的 `div` 元素,并将 `htmlStr` 作为其子元素返回。
el-table-column 遍历图片
可以使用作用域插槽来自定义 el-table-column 的内容,然后在插槽中遍历图片。具体实现可以参考以下代码:
```html
<el-table :data="tableData">
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column label="图片">
<template slot-scope="scope">
<div v-for="image in scope.row.images">
<img :src="image" alt="">
</div>
</template>
</el-table-column>
</el-table>
```
其中,`tableData` 是表格数据,每一行数据中都有一个 `images` 属性,它是一个数组,存储了该行对应的图片链接。