用v-for渲染列表,如何根据li的内容改变表格某一个li的class?
比如说想让name为banana的li背景色为黄色,并且name相同的li背景色都相同。
name的数据是从后台获取的。
目标效果图:
<template>
<ul>
<li v-for="(item, index) in myList" :class="{ active: isActive }">
{{ item.name }}
</li>
</ul>
</template>
<script>
data() {
return {
myList: [{
name: apple
},{
name: orange
},{
name: banana
},{
name: orange
},{
name: apple
}],
isActive: false
}
}
</script>
初入门,思考了很久没有什么思路,烦请各路大神指点,谢谢了……
name数据从后台获取的话也就是不确定会有啥名,建议在数据里面加上color数据值,{ name: 'apple' ,color:'red'}这样的话就不用去写那么多的if判断了,再或者如楼上所说的直接把name当类名,不过这就要求你事先知道name的值