ElementUI 中table表格数据解析渲染html
在ElementUI中,如果你想在表格中渲染HTML,可以使用rich
属性结合自定义列模板。以下是一个简单的例子:
首先,确保你已经在项目中安装并使用了ElementUI。
然后,在你的Vue组件中,可以这样定义表格的列:
<template>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="date" label="日期" width="180"></el-table-column>
<el-table-column prop="name" label="姓名" width="180"></el-table-column>
<el-table-column label="HTML内容" width="300">
<template slot-scope="scope">
<div v-html="scope.row.htmlContent"></div>
</template>
</el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{
date: '2016-05-02',
name: '张三',
htmlContent: '<strong>这是粗体文本</strong>'
},
// ... 其他数据
]
};
}
};
</script>
在这个例子中,我们定义了一个包含date
、name
和htmlContent
的tableData
数组。htmlContent
包含的是HTML字符串。在表格中,我们使用el-table-column
的template
插槽来定义自定义列模板,并使用v-html
指令将scope.row.htmlContent
渲染为HTML。
请注意,使用v-html
可能会导致跨站脚本攻击(XSS)的风险,因此请确保你的数据是安全的或已经进行了适当的清理和转义。
评论已关闭