<el-table-column prop="cycles" label="事项"> <template slot-scope="scope"> <span :style="{ color: getColor(scope.row.cycles) }">{{ scope.row.cycles }}</span> </template> </el-table-column>methods: { getColor(cycles) { switch (cycles) { case '正常': return 'red'; case '小助理': return 'blue'; case '大皮球': return 'yellow'; default: return ''; } } }如何将此代码优化为包含正常汉字只把正常两个字变为红色
时间: 2024-03-27 22:40:07 浏览: 94
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
您可以尝试使用正则表达式来匹配字符串中的 "正常",并将其替换为一个带有红色样式的 span 标签。下面是一个示例代码:
```html
<el-table-column prop="cycles" label="事项">
<template slot-scope="scope">
<span v-html="scope.row.cycles.replace(/正常/g, '<span style=\'color:red\'>正常</span>')"></span>
</template>
</el-table-column>
```
这里使用了 v-html 指令来渲染 HTML 字符串,将匹配到的 "正常" 替换为带有红色样式的 span 标签。注意,这种做法会将所有匹配到的 "正常" 都替换成带有样式的 span 标签,如果有其他地方也出现了 "正常",也会被替换。如果您需要更精确的匹配,可以根据具体情况来修改正则表达式。
阅读全文