Vue:选中商品规格改变字体和边框颜色(默认选中第一种规格)

我与影子孤独终老i 提交于 2019-11-26 16:17:09

效果图:

CSS:

<div class="label">
    <p>标签类别</p>
    <ul>
        <li v-for="(item, idx) in list1" :key="idx" :class="{ specColor:changeColor1 === idx}" @click="changeSpec(1,idx)">
        <button class="but1">{{item.label}}</button>
        </li>
    </ul>
</div>
<div class="label">
    <p>标签类别</p>
    <ul>
        <li v-for="(item, idx) in list1" :key="idx" :class="{ specColor:changeColor2 === idx}" @click="changeSpec(0,idx)">
        <button class="but1">{{item.label}}</button>
        </li>
    </ul>
</div>                    

JS:

<script>
  export default {
    name: 'detailsOfGoods',
    data () {
      return {
        changeColor1: 0,
        changeColor2: 0,
      }
    },
    methods: {
      /*
      * 选中商品规格
      */
      changeSpec (i, idx) {
        if (i) {
          this.changeColor1 = idx
        } else {
          this.changeColor2 = idx
        }
      }
    }
  }
</script>

样式:

<style scoped lang="less">
    .specColor .but1{
        color: #e94d3e;
        border: solid 1px #e94d3e;
      }
</style>

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!