el-table表头添加icon
时间: 2023-10-27 14:18:56 浏览: 92
要在 `el-table` 的表头添加一个 icon,你可以使用 `scoped slot` 来自定义表头的内容。以下是一个简单的例子:
```html
<el-table :data="tableData">
<el-table-column prop="name" label="Name">
<template slot="header">
<span>
Name
<i class="el-icon-info"></i>
</span>
</template>
</el-table-column>
<el-table-column prop="age" label="Age"></el-table-column>
</el-table>
```
在这个例子中,我们在表头中使用了一个 `scoped slot`,并在其中添加了一个 icon。`slot="header"` 表示我们要自定义表头的内容。在 `template` 标签中,我们可以使用任何 HTML 元素或 Vue 组件来构建表头的内容。在这个例子中,我们在表头的标题后添加了一个 `i` 元素,其类名为 `el-icon-info`,这是 element-ui 提供的一个 icon 类名,你可以根据自己的需要使用任何其他的 icon 类名。
相关问题
el-table 表头使用el-popover
为了在el-table表头中使用el-popover,您需要为每个popover绑定一个独特的变量。以下是一个例子,展示了如何在el-table表头中使用el-popover:
```html
<template>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="date" label="日期" width="180">
<template slot="header">
<div>
日期
<el-popover
placement="bottom"
width="200"
trigger="hover"
v-model="popoverVisible1"
>
<p>这是一个日期选择器</p>
<el-date-picker v-model="date" type="date" placeholder="选择日期"></el-date-picker>
</el-popover>
<el-button
slot="reference"
icon="el-icon-question"
size="mini"
@click="popoverVisible1 = true"
></el-button>
</div>
</template>
</el-table-column>
<el-table-column prop="name" label="姓名" width="180">
<template slot="header">
<div>
姓名
<el-popover
placement="bottom"
width="200"
trigger="hover"
v-model="popoverVisible2"
>
<p>这是一个输入框</p>
<el-input v-model="name" placeholder="请输入姓名"></el-input>
</el-popover>
<el-button
slot="reference"
icon="el-icon-question"
size="mini"
@click="popoverVisible2 = true"
></el-button>
</div>
</template>
</el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{
date: '2022-01-01',
name: '张三'
},
{
date: '2022-01-02',
name: '李四'
},
{
date: '2022-01-03',
name: '王五'
}
],
popoverVisible1: false,
popoverVisible2: false,
date: '',
name: ''
};
}
};
</script>
```
在这个例子中,我们为每个el-popover绑定了一个独特的变量(popoverVisible1和popoverVisible2),这样每个popover就可以正常渲染了。同时,我们还为每个popover添加了一个el-button,当用户将鼠标悬停在这个按钮上时,popover就会显示出来。
<template> <el-container style="height: 100%"> <el-table :data="tableData" style="width: 100%"> <el-table-column prop="index" label="考核指标" :header-cell-style="{backgroundColor: '#ff0000'}" width="110"></el-table-column> <el-table-column prop="ymatter" label="具体事项(原)" :header-cell-style="{backgroundColor: '#00ff00'}"></el-table-column> <el-table-column label="具体事项(新)" prop="xmatter"> <el-table-column prop="point" label="考核要点"></el-table-column> <el-table-column prop="method" label="计分方法"></el-table-column> <el-table-column prop="target" label="考核目标" width="200"></el-table-column> </el-table-column> <el-table-column prop="cycle" label="考核周期" :header-cell-style="{backgroundColor: '#0000ff'}" width="50"></el-table-column> </el-table> </el-container> </template>给这个表格美化的显眼点
你可以尝试在表头中添加图标或者字体图标,让它更加显眼。例如,可以在考核指标列的表头单元格中添加一个 `el-icon-warning-outline` 的图标,表示这一列是比较重要的内容;在考核周期列的表头单元格中添加一个 `el-icon-date` 的图标,表示这一列是和日期相关的内容。同时,你也可以尝试添加一些过渡效果,比如当鼠标悬停在单元格上时,让单元格的背景色变化,增加一些交互效果。下面是一个例子:
```
<template>
<el-container style="height: 100%">
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="index" label="考核指标" :header-cell-style="{backgroundColor: '#ff0000'}" width="110">
<template slot="header">
<i class="el-icon-warning-outline"></i>
考核指标
</template>
</el-table-column>
<el-table-column prop="ymatter" label="具体事项(原)" :header-cell-style="{backgroundColor: '#00ff00'}"></el-table-column>
<el-table-column label="具体事项(新)" prop="xmatter">
<el-table-column prop="point" label="考核要点"></el-table-column>
<el-table-column prop="method" label="计分方法"></el-table-column>
<el-table-column prop="target" label="考核目标" width="200"></el-table-column>
</el-table-column>
<el-table-column prop="cycle" label="考核周期" :header-cell-style="{backgroundColor: '#0000ff'}" width="50">
<template slot="header">
<i class="el-icon-date"></i>
考核周期
</template>
</el-table-column>
</el-table>
</el-container>
</template>
<style>
.el-table__row:hover {
background-color: #f5f5f5;
}
</style>
```
这个例子中,我们在考核指标列和考核周期列的表头中分别添加了一个图标和文字,让它们更加显眼。同时,在 CSS 中定义了当鼠标悬停在单元格上时,单元格的背景色变成浅灰色,增加了一些过渡效果。你可以根据需要修改图标和颜色等样式,或添加其他交互效果。
阅读全文