【发布时间】:2021-06-19 13:55:04
【问题描述】:
我有一个使用对象数组填充的按钮列表:
<div
class="form-inline"
v-for="(genre, index) in genreArray"
:key="index"
>
<button class="btn m-1" type="button" @click="genreButton(genre, index)"
:class="[
{ 'clicked': clicked}
]"
>
{{ genre.name }}
</button>
</div>
数组的格式如下:
genreButton=[{
id='1234'
name='buttonOne'
},
//and many more objects with same key and different values
]
我尝试通过向其添加类来更改单击按钮的颜色:
data(){
return {
clicked: false
}
},
methods:{
genreButton(genre, index){
this.clicked = !this.clicked
}
}
这是 CSS:
.clicked{
background-color= red;
}
但问题是当我这样做时,所有按钮都会改变颜色。如何仅更改被点击按钮的颜色?
【问题讨论】:
标签: javascript html css vue.js object