Gentle0503 2023-02-12 16:37 采纳率: 64.7%
浏览 13
已结题

Vue,修改v-for 中list的 item 一个属性 但是失败,没有渲染出来

页面代码:

但是奇怪的是 我点击按钮 进行全选操作时,选择框并没勾上,哪里有问题?

img

<el-checkbox v-for="item in itemList" :label="item.name" :key="item.id" :disabled="item.disabled" :checked="item.checked">{{ item.name }}
 </el-checkbox>

JS代码:

 handleCheckedAllItem() {
      this.checkAll = !this.checkAll
      console.log(this.checkAll)
      for(let index=0;index<this.itemList.length;index++){
        let temp= this.itemList[index];
        temp.checked = this.checkAll
        this.itemList.splice(index, 1, temp); //替换数组中这个元素
      }
      console.log(this.itemList.length)
      console.log(this.itemList)
    }
  • 写回答

2条回答 默认 最新

  • Gentle0503 2023-02-12 17:41
    关注

    结帖:

    首先 没有按照官网那样来的,就是双向绑定的问题 v-for 不能检测到item 中数据的变化,需要用splice 进行替换元素, 说白了就是进栈出栈的问题,这样就行了,如果还是不行 那就像我一样 没有将元素写入group 的 v-model 中 ,注意绑定的v-for 元素的label

     for(let index=0;index<this.itemList.length;index++){
            let temp= this.itemList[index];
            temp.checked = this.checkAll
            this.itemList.splice(index, 1, temp); //替换数组中这个元素
            this.checkList.push(temp.name) //不能丢!!!!!!!!!!!
          }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月20日
  • 已采纳回答 2月12日
  • 创建了问题 2月12日

悬赏问题

  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥15 可见光定位matlab仿真