跳转至

列表项选中高亮

要实现Vue2中列表中选中某一项背景变绿,其他项移除背景,可以通过绑定class的方式来实现。

  1. 在数据中添加一个属性selectedItem,用于记录选中的项:

    data() {
      return {
        items: [
          { id: 1, name: 'Item 1' },
          { id: 2, name: 'Item 2' },
          { id: 3, name: 'Item 3' }
        ],
        selectedItem: null
      }
    }
    

  2. 在模板中遍历items,并为每一项绑定class:

    <template>
      <div>
        <ul>
          <li v-for="item in items" :key="item.id" :class="{ 'selected': item === selectedItem }" @click="selectItem(item)">
            {{ item.name }}
          </li>
        </ul>
      </div>
    </template>
    

  3. 在方法中定义selectItem方法,用于选中某一项:

    methods: {
      selectItem(item) {
        this.selectedItem = item;
      }
    }
    

  4. 在样式中定义.selected类,用于设置选中项的背景颜色:

    .selected {
      background-color: green;
    }
    

通过以上步骤,当点击列表项时,被选中的项会有绿色的背景,其他项则移除背景色。