收藏
回答

根据点击的view设置样式?

怎么点击A 让字体的颜色变成红色,同时C字体变成蓝色啊。求大神指教

回答关注问题邀请回答
收藏

3 个回答

  • 那一抹笑😃 穿透阳光
    那一抹笑😃 穿透阳光
    03-04

    你的意思是可以多选,但是每一个点击选中之后,颜色不一样是吧,这个就是这样

    dataList: [{name: "A", checked: false,

            }, {name: "B",checked: false

            }, {name: "C",checked: false

            }, {name: "D",checked: false

            }]

    <view bind:tap="checkDatadata-index="{{index}}" wx:for="{{dataList}}" wx:key="uniqueclass="defaultCla {{item.checked ? 'activeCls'+index : ''}}">

                <view>{{item.name}}</view>

            </view>

    checkData(event) {

            let index = event.currentTarget.dataset.index;

            let li = this.data.dataList;

            li[index].checked = !li[index].checked

            this.setData({

                dataList: li

            })

        },

    .defaultCla {width: 100%;height: 80rpx;border-radius: 40rpx;background: #eeeeee;margin-top: 20rpx;padding: 0 30rpx;box-sizing: border-box;}

    .activeCls0 {background: red;}

    .activeCls1 {background: yellow;}

    .activeCls2 {background: blue;}

    .activeCls3 {background: blueviolet;}


    03-04
    有用
    回复
  • 空军建军节
    空军建军节
    03-02

    这样好像不能同时给两个选项设置样式吧?

    03-02
    有用
    回复
  • 启年
    启年
    03-02

    点击事件拿到index ,然后赋值给一个参数selectIndex 然后....

    <view class="{{selectIndex == index ? 'selectClass':'commonClass'}}">

    去git上面,找一些开源项目学习一下吧

    03-02
    有用
    回复 2
    • 空军建军节
      空军建军节
      03-02
      这样好像不能同时给两个选项设置样式吧?
      03-02
      回复
    • 启年
      启年
      03-02回复空军建军节
      selectIndex  变成一个数组啊
      03-02
      回复
登录 后发表内容