uni-list-item点击高亮
时间: 2024-01-04 09:02:58 浏览: 271
要实现 uni-list-item 点击高亮的效果,可以使用以下步骤:
1. 在 uni-list-item 上添加 @click 事件,触发点击事件时执行一个方法。
2. 在这个方法中,利用 uni.setStorageSync 方法将被点击的 uni-list-item 的 index 存储在本地缓存中。
3. 在 uni-list-item 的样式中,使用 :active 伪类选择器,当该元素被点击时,可以对其进行样式调整。
4. 在 uni-list 中,遍历每个 uni-list-item,并根据本地缓存中存储的 index 值,设置该元素的样式以达到高亮效果。
下面是实现 uni-list-item 点击高亮的示例代码:
```html
<template>
<view>
<uni-list>
<uni-list-item
v-for="(item, index) in list"
:key="index"
:class="{'active': activeIndex === index}"
@click="handleItemClick(index)"
>
{{ item }}
</uni-list-item>
</uni-list>
</view>
</template>
<script>
export default {
data() {
return {
list: ['item1', 'item2', 'item3', 'item4'],
activeIndex: -1
}
},
methods: {
handleItemClick(index) {
uni.setStorageSync('activeIndex', index)
this.activeIndex = index
}
},
mounted() {
const activeIndex = uni.getStorageSync('activeIndex')
if (activeIndex !== undefined) {
this.activeIndex = activeIndex
}
}
}
</script>
<style>
.uni-list-item:active {
background-color: #f2f2f2;
}
.active {
background-color: #f2f2f2;
}
</style>
```
阅读全文