如何动态控制样式

需求说明

  • 通过点击 控制当前点击的项的样式,实现动态控制样式的效果
    在这里插入图片描述
    在这里插入图片描述

方法说明

  • 将三个按钮设置为一个数组,通过 v-for 遍历展示,在每个 item 添加点击事件 selectCycle ,保留当前点击的索引值为 currentCycle ,通过 currentCycle === index 判断设置行内样式,设置当前点击的 item 的样式为 'background: rgba(24, 144, 255, 0.2);color: #1890FF;'

代码说明

//html
<template>
<div class="cycle">
            <div
              v-for="(item, index) in cycleList"
              :key="index"
              class="day"
              :style="
                currentCycle === index
                  ? 'background: rgba(24, 144, 255, 0.2);color: #1890FF;'
                  : ''
              "
              @click="selectCycle(index)"
            >
              {{ item.name }}
            </div>
          </div>
</template>
//javascript
<script>
export default {
  name: 'cycleSelect',
  data() {
    return {
      // 周期选择
      cycleList: [
        { class: 'day', name: '日' },
        { class: 'week', name: '周' },
        { class: 'month', name: '月' }
      ],
      currentCycle: 0
    }
  },
  methods: {
    // 选择周期(日、周、月)
    selectCycle(val) {
      this.currentCycle = val
    }
  }
}
</script>
//css
<style lang="scss" scoped>
		.cycle {
          display: flex;
        }
//基础样式
        .cycle > div {
          width: 34px;
          height: 26px;
          border-radius: 4px;
          background: rgba($color: #cccccc, $alpha: 0.2);
          margin-right: 8px;
          display: flex;
          justify-content: center;
          align-items: center;
        }
</style>

写在最后

记录使用到的一些方法,避免忘记,若有不足之处请多多指教

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值