【Web前端问题】vue 表格中点击表头改变颜色,事件中改变的属性,不能更新到样式上
实现点击表头改变背景颜色,active值改变反馈不到class属性上?怎么修改?
<div class="tableList"> <table border="" cellspacing="" cellpadding="">
<tr><th v-for="head in tableHeads" @click="orderBy(head)" :class="{active: head.active}">{{head.label}}</th></tr>
<tr v-for="item in tableData">
<td v-for="head in tableHeads">{{ item[head.key] }}</td>
</tr>
</table>
</div>
methods :{
orderBy(headItem){
this.tableHeads.map((item) =>{
item.active = false
return item
})
headItem.active = true;
}
},
.tableList th.active{
background: #35495e;
}
回答:
orderBy(head){ this.tableHeads.map((item) =>{
if(item.active||item.active==undefined)
this.$set(item,'active',false)
})
this.$set(head,'active',true);
}
回答:
orderBy(index){
let arr =this.tableHeadsarr.map((item,i)=>{
if(item.active){
item.active=false
}
})
arr[index].active=true
this.tableHeads=arr // 要给如果data是obj或者数组,要给他重新赋值,才能触发视图渲染
}
以上是 【Web前端问题】vue 表格中点击表头改变颜色,事件中改变的属性,不能更新到样式上 的全部内容, 来源链接: utcz.com/a/135006.html