#
whycq
2022-04-01 1f953fd7165222a7d460aadd4d3509414924d115
pages/basics/demo.vue
@@ -4,9 +4,9 @@
         <view class="demo-tab">
            <checkbox-group @change="checkbox">
               <label v-for="(item,index) in data" :key="index" 
                     @click="changeClass(index)" class="demo-list" :class="{'active':add_class==index}" >
                     @click="changeClass(index)" class="demo-list bg-false" :class="{'active':add_class==index}" >
                      
                     <view :class="'bg-'+item.checked">
                     <view :class="'bg-'+item.checked" class="demo-list">
                        <view class="demo-list-left"><checkbox :value="item.id+''" :checked="item.checked" />
                        </view>
                        <view class="demo-list-right">
@@ -66,48 +66,30 @@
                  var res = res.data
                  if (res.code === 200) {
                     that.data = res.data.records
                     console.log(that.data)
                     // that.setCheck()
                     
                  }
               }
            })
         },
         // setCheck() {
         //    for (var i = 0; i < this.data.length; i++) {
         //       var key = 'checked',
         //          value = false
         //       this.data[i][key] = value
         //    }
         // },
         checkbox: function (e) {
            
            var items = this.data,
               values = e.detail.value;
            for (var i = 0, lenI = items.length; i < lenI; ++i) {
               const item = items[i]
               console.log(values)
               console.log(values.indexOf(item.value))
               item.id = item.id + ''
               if(values.indexOf(item.id) >= 0){
                  this.$set(item,'checked',true)
               }else{
                  this.$set(item,'checked',false)
               }
            }
            // var val = e.detail.value
            // for (var j = 0; j < this.data.length;j++) {
            //    this.data[j].checked = false
            // }
            // for (var i = 0; i < val.length; i++) {
            //    val[i] = parseInt(val[i])
            //    this.data[val[i]].checked = true
            //    console.log(val)
            //    console.log(this.data)
            // }
            console.log(this.data)
         },
         changeClass(index) {
            console.log(index)
            this.add_class=index
         }
      }
@@ -119,7 +101,7 @@
      background-color: #FFFFFF;
   }
   .bg-true {
      background-color: #d6d6d6;
      background-color: #e5e5e5;
   }
   .demo-tab {
   }