element-ui table自定义表头的两种方式
两种方式:
1.采用render-header方法,在el-table-column 添加render-header属性,功能就表头为责任人的添加一个问好,鼠标hover显示一个提示。这种方给表头添加样式比较麻烦,里面的代码要自行组装。
<el-table-column
prop="dutyName"
label="责任人"
:render-header="headercellclassname"
>
methods: {
headercellclassname(h, { column, $index }) {
// 自定义表格label样式
if (column.label !== "责任人") {
return;
}
return h("div", [
h("span", column.label),
h(
"el-popover",
{
props: {
content: "最多显示5位责任人,如有更多责任人,请进入项目详情查看",
placement: "top",
trigger: "hover",
},
},
[
h("span", {
class: "el-icon-warning",
style: "color:#c7c9d4",
slot: "reference",
}),
]
),
]);
},
}
2.使用表格自带slot属性。通过在template标签上添加slot="name" 实现自定义表头,也就是在同一个table-column下面可以同时存在原本显示每行内容的template和自定义表头的template。
<el-table-column>
<template slot="header">
<span>责任人</span>
<el-popover
placement="top"
trigger="hover"
content="最多显示5位责任人,如有更多责任人,请进入项目详情查看">
<i class="el-icon-warning" slot="reference" style="color:#c7c9d4"></i>
</el-popover>
</template>
<template slot-scope="scope">
<span>这里是每行显示的内容</span>
</template >
</el-table-column>
效果如下:
发表评论 (审核通过后显示评论):