el-table-column prop 的值 显示不同
时间: 2023-04-07 10:05:24 浏览: 85
的颜色,该怎么做?
你可以使用 el-table-column 的 formatter 属性来自定义列的显示方式,然后根据不同的 prop 值设置不同的颜色。例如:
```javascript
<el-table-column prop="status" label="状态" :formatter="formatStatus"></el-table-column>
...
methods: {
formatStatus(row, column, cellValue) {
if (cellValue === '已完成') {
return '<span style="color: green;">' + cellValue + '</span>';
} else if (cellValue === '未完成') {
return '<span style="color: red;">' + cellValue + '</span>';
} else {
return cellValue;
}
}
}
```
在这个例子中,我们根据 status 的值来设置不同的颜色,已完成的状态显示为绿色,未完成的状态显示为红色。
相关问题
将 <li th:each=" j: ${jobs}" th:text="${j}"></li>里面的数据放入到<template> <el-table :data="tableData" style="width: 100%"> <el-table-column prop="name" label="姓名" width="180"></el-table-column> <el-table-column prop="alias" label="绰号" width="180"></el-table-column> <el-table-column prop="age" label="年龄" width="180"></el-table-column> <el-table-column prop="edus" label="学历" width="180"></el-table-column> <el-table-column prop="pwd" label="密码" width="180"></el-table-column> <el-table-column prop="email" label="邮箱" width="180"></el-table-column> <el-table-column prop="phone" label="电话" width="180"></el-table-column> <el-table-column prop="likesAsString" label="爱好" width="180"></el-table-column> <el-table-column prop="birthday" label="生日" width="180"></el-table-column> </el-table> </template>里面
你可以使用以下代码将数据放入到<template>中的<el-table>组件中:
```html
<template>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="name" label="姓名" width="180"></el-table-column>
<el-table-column prop="alias" label="绰号" width="180"></el-table-column>
<el-table-column prop="age" label="年龄" width="180"></el-table-column>
<el-table-column prop="edus" label="学历" width="180"></el-table-column>
<el-table-column prop="pwd" label="密码" width="180"></el-table-column>
<el-table-column prop="email" label="邮箱" width="180"></el-table-column>
<el-table-column prop="phone" label="电话" width="180"></el-table-column>
<el-table-column prop="likesAsString" label="爱好" width="180"></el-table-column>
<el-table-column prop="birthday" label="生日" width="180"></el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [],
};
},
mounted() {
this.getTableData();
},
methods: {
getTableData() {
// 将 ${jobs} 数据赋值给 tableData
this.tableData = [
// 根据数据结构修改以下对象的属性
{ name: '', alias: '', age: '', edus: '', pwd: '', email: '', phone: '', likesAsString: '', birthday: '' },
];
},
},
};
</script>
```
在mounted钩子函数中调用getTableData方法,将`${jobs}`的数据赋值给`tableData`,然后在<el-table>组件中使用`tableData`来渲染数据。你需要根据数据的结构修改`getTableData`方法中的对象属性,确保数据能正确显示在表格中。
<el-table-column prop="phone" label="手机号"> </el-table-column> <el-table-column prop="nickName" label="昵称"> </el-table-column> <el-table-column prop="wechat" label="微信号"> </el-table-column> <el-table-column prop="address" label="购买地址"> </el-table-column> <el-table-column prop="email" label="物流单号"> </el-table-column> <el-table-column prop="consume" label="消费金额"> </el-table-column> <el-table-column prop="createTime" label="申请时间"> </el-table-column>这样的表格给物流单号那一列加点击复制按钮,复制成功用element ui的message组件
您可以使用 Element UI 中的 `<el-button>` 和 `<el-tooltip>` 组件来实现这个需求。代码示例如下:
```html
<el-table-column prop="email" label="物流单号">
<template slot-scope="scope">
<el-tooltip content="复制物流单号" placement="top">
<el-button type="text" icon="el-icon-document" @click="handleCopy(scope.row.email)">
</el-button>
</el-tooltip>
</template>
</el-table-column>
```
在这个示例中,我们在 `<el-table-column>` 标签中的模板中添加了 `<el-tooltip>` 和 `<el-button>` 组件。当鼠标悬停在按钮上时,会显示一个提示框,提示复制物流单号的功能。按钮的点击事件绑定 `handleCopy` 方法,该方法会将物流单号复制到剪贴板,并使用 `<el-message>` 组件显示复制成功的提示消息。
下面是完整的代码示例:
```html
<template>
<div>
<el-table :data="tableData">
<el-table-column prop="phone" label="手机号"></el-table-column>
<el-table-column prop="nickName" label="昵称"></el-table-column>
<el-table-column prop="wechat" label="微信号"></el-table-column>
<el-table-column prop="address" label="购买地址"></el-table-column>
<el-table-column prop="email" label="物流单号">
<template slot-scope="scope">
<el-tooltip content="复制物流单号" placement="top">
<el-button type="text" icon="el-icon-document" @click="handleCopy(scope.row.email)">
</el-button>
</el-tooltip>
</template>
</el-table-column>
<el-table-column prop="consume" label="消费金额"></el-table-column>
<el-table-column prop="createTime" label="申请时间"></el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
tableData: [
{
phone: '13333333333',
nickName: '张三',
wechat: 'zhangsan',
address: '上海市浦东新区',
email: '1234567890',
consume: 1000,
createTime: '2021-01-01'
},
{
phone: '14444444444',
nickName: '李四',
wechat: 'lisi',
address: '北京市朝阳区',
email: '0987654321',
consume: 2000,
createTime: '2021-01-02'
}
]
}
},
methods: {
handleCopy(email) {
const input = document.createElement('input')
input.setAttribute('value', email)
document.body.appendChild(input)
input.select()
document.execCommand('copy')
document.body.removeChild(input)
this.$message({
type: 'success',
message: '物流单号已复制'
})
}
}
}
</script>
```