说明:当需要根据后端返回的数据状态来渲染对应的颜色或者内容时,可以使用过滤器。如果状态只有俩种,那就可以直接使用三元运算符
三元写法
<el-tag :type="row.status === 1 ? red : bule">{
{ row.status }}</el-tag>
当需要判断的内容很多时
<el-tag :type="row.status | statusFilter">{
{ row.status }}</el-tag>
filters: {
//根据返回的状态来渲染对于的颜色或者内容,这里的根据状态返回的数据去取对应的下标,所以,需要根据你的状态数字来放对应的内容,比如你后端给的1代表红色,那么你就需要在第二个那里放红色,根据下标1来取,就是第二个
statusFilter(status) {
const statusMap = {
published: 'success',
draft: 'info',
deleted: 'danger'
}
return statusMap[status]
}
},