这篇文章主要讲解了vue v-for出来的列表,如何实现点击某个li使得当前被点击的li字体变红,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
这里使用的是给被点击的li添加类名的方式
<template>
<div class="person1">
<div v-for="(item,index) in lists" @click="clickAdd(index)" :key="index" :class="{red:i === index}">
<div>{{item.name}}</div>
</div>
</div>
</template>
<script>
export default {
data () {
return {
isShow: false,
i: null,
lists: [
{id: 1, name: 'rose'},
{id: 2, name: 'mike'},
{id: 3, name: 'jerry'}
]
}
},
methods: {
clickAdd (index) {
console.log(index)
this.i = index
}
},
watch: {
}
}
</script>
<style>
li{
list-style: none;
}
.red{
color: red;
}
</style>
如果想要获取lists里某条数据信息的话,直接将item传递过去即可(@click=“clickAdd(item)”)
补充知识:vue点击ul中的li显示,点击其他地方隐藏
vue点击ul中的li显示弹框,点击其他地方隐藏弹框
注意:ref="seatTipOperation"
<ul
ref="seatTipOperation"
v-if="seatTipOperationVisible"
>
<li @click="handleSeatTipAdd()">添加</li>
<li @click="handleSeatTipDelect()">删除</li>
<li @click="handleSeatTipLock()">锁定</li>
<li @click="handleSeatTipFillIn()">插空</li>
<li @click="handleSeatTipSocket()">插座</li>
<li @click="handleSeatTipSwop()">对调</li>
</ul>
handleSeatList () {
this.seatTipOperationVisible = true
}
mounted () {
// this的指向问题
let that = this
document.addEventListener('click', function (e) {
// 这里that代表组件,this代表document
// 冒泡也不会隐藏
if(!that.$refs.seatTipOperation.contains(e.target)){
that.seatTipOperationVisible = false
}
})
}
看完上述内容,是不是对vue v-for出来的列表,如何实现点击某个li使得当前被点击的li字体变红有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。